作为鸿蒙运用开发者,上社区使用在运用 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 渠道。