DialogHub上线OpenHarmony开源社区,高效开发鸿蒙应用弹窗

作为鸿蒙应用开发者,在使用ArkUI现有能力进行弹窗开发时,总会遇到一些让人纠结的交互问题:应用内进行消息提示时,既要求消息内容支持图文混排,又要求弹窗本身不能打断用户交互(页面滑动、页面点击、键盘输入等操作);弹窗本身与弹窗蒙层的动画需要进行独立设置;弹窗避让键盘需要自定义避让距离;气泡提示的箭头需要进行自定义等。开发者需要开发很多额外的代码去解决这些交互问题,但通过"DialogHub"弹窗三方库,只需要一两个配置项就可以轻松解决上述问题。

"DialogHub"可高效地解决以下3点问题:1、上文提到的焦点、手势、动画等交互问题;2、弹窗需要与UI进行解耦。3、弹窗需要具备复用能力。接下来以具体示例说明:

"DialogHub"提供了多种配置选项解决弹窗的交互问题。例如,通过setConfig接口的passThroughGesture属性解决手势透传问题;requestFocusWhenShow属性解决焦点抢占问题;通过setAnimation接口的customMaskAnimation解决遮罩动画自定义的问题:

"DialogHub"支持UI解耦的弹窗能力。例如,在全局监听里创建弹窗(以气泡弹窗为例),通过链式调用的方式绑定目标组件并弹出:

"DialogHub"提供弹窗模板能力,便于开发者实现弹窗复用。以图文混排的消息提示框为例:

步骤一:使用"DialogHub"的createToastTemplate、register接口创建一个符合UX定义的消息提示框模板:

步骤二:使用"DialogHub"的getToastTemplate接口获取定义好的模板并弹出

在实际应用中,"DialogHub"的能力也得到了开发者的高度认可。据某头部App开发者反馈:"DialogHub"对系统弹窗进行了统一封装,链式调用学习成本低,一行代码就能完成弹窗属性配置,代码更加简洁清晰。

"DialogHub"的推出为开发者提供了一个开箱即用的弹窗管理解决方案,帮助开发者更高效地实现各种场景下的弹窗功能,显著降低学习成本与开发成本。目前,"DialogHub"已开源至OpenHarmony三方库中心仓以及Gitee平台。

开发者可访问"OpenHarmony官网",点击"开发者"------>"三方库中心仓"------>搜索"DialogHub";或登录"Gitee官网",首页搜索"DialogHub",快速下载集成,并参与代码贡献与问题反馈。共同提升鸿蒙应用的性能与体验。

未来华为也将持续携手生态伙伴共建创新,面向底座技术、通用能力、垂类行业等场景推出系列开发者场景化解决方案,不断提升鸿蒙应用的创新体验和开发效率,与广大开发者共建繁荣的鸿蒙生态。

更多关于"DialogHub"的信息和使用指南,请访问:

developer.huawei.com/consumer/cn...

gitee.com/hadss/Dialo...

ohpm.openharmony.cn/#/cn/detail...

相关推荐
阿珊和她的猫1 小时前
CSS3新特性概述
前端·css·css3
前端小端长2 小时前
qiankun 微前端应用入门教程:从搭建到部署
前端
yinuo4 小时前
前端跨页面通讯终极指南⑥:SharedWorker 用法全解析
前端
PineappleCoder9 小时前
还在重复下载资源?HTTP 缓存让二次访问 “零请求”,用户体验翻倍
前端·性能优化
拉不动的猪9 小时前
webpack编译中为什么不建议load替换ast中节点删除consolg.log
前端·javascript·webpack
李姆斯9 小时前
Agent时代下,ToB前端的UI和交互会往哪走?
前端·agent·交互设计
源码获取_wx:Fegn08959 小时前
基于springboot + vue健身房管理系统
java·开发语言·前端·vue.js·spring boot·后端·spring
闲谈共视9 小时前
基于去中心化社交与AI智能服务的Web钱包商业开发的可行性
前端·人工智能·去中心化·区块链
CreasyChan9 小时前
C# 反射详解
开发语言·前端·windows·unity·c#·游戏开发
JIngJaneIL10 小时前
基于Java+ vue智慧医药系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot