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上线OpenHarmony开源社区,高效开发鸿蒙应用弹窗的更多相关文章
- 来了!公开揭密团队成员开发鸿蒙 OpenHarmony 的完整过程(收获官方7000奖金和开发板等,1w字用心总结)
背景 随着 OpenHarmony 组件开发大赛结果公布,我们的团队成员被告知获得了二等奖,在开心之余也想将我们这段时间宝贵的开发经验写下来与大家分享,当我们看到参赛通知的时候已经是 9 月中旬的时候 ...
- 人民网慕课联手FISCO BCOS开源社区上线“区块链学院”
FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行. ...
- 龙芯开源社区上线.NET主页
龙芯团队从2019年7 月份开始着手.NET Core的MIPS64支持研发,经过将近一年的研发,在2020年6月18日完成了里程碑性的工作,在github CoreCLR 仓库:https://gi ...
- VM Depot 助您使用本地开源软件架设开发 Web 站点
发布于 2014-04-25 作者 云 浪生 使用 VM Depot 中的镜像在 Azure 上创建.开发.部署网站与应用不仅方便快捷而且省时省力!感谢开源社区的大力支持,我们的VM Depot ...
- VSCode 必装的 10 个高效开发插件
本文介绍了目前前端开发最受欢迎的开发工具 VSCode 必装的 10 个开发插件,用于大大提高软件开发的效率. VSCode 的基本使用可以参考我的原创视频教程「VSCode 高效开发必装插件」. V ...
- go语言,golang学习笔记1 官网下载安装,中文社区,开发工具LiteIDE
go语言,golang学习笔记1 官网下载安装,中文社区,开发工具LiteIDE Go语言是谷歌2009发布的专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速 ...
- VSCode高效开发插件
VSCode 必装的 10 个高效开发插件 https://www.cnblogs.com/parry/p/vscode_top_ten_plugins.html 本文介绍了目前前端开发最受欢迎的开发 ...
- AEAI DP V3.6.0 升级说明,开源综合应用开发平台
AEAI DP综合应用开发平台是一款扩展开发工具,专门用于开发MIS类的Java Web应用,本次发版的AEAI DP_v3.6.0版本为AEAI DP _v3.5.0版本的升级版本,该产品现已开源并 ...
- .Net 高效开发之不可错过的实用工具(转)
.Net 高效开发之不可错过的实用工具(转) 本文摘自: http://www.cnblogs.com/powertoolsteam/p/5240908.html#3372237 Visual Stu ...
- Net 高效开发
Net 高效开发之不可错过的实用工具 工欲善其事,必先利其器,没有好的工具,怎么能高效的开发出高质量的代码呢?本文为各ASP.NET 开发者介绍一些高效实用的工具,涉及SQL 管理,VS插件,内存 ...
随机推荐
- 5. Docker 本地镜像发布到阿里云
5. Docker 本地镜像发布到阿里云 @ 目录 5. Docker 本地镜像发布到阿里云 1. 本地镜像发布到阿里云流程 最后: 1. 本地镜像发布到阿里云流程 镜像的生成方法: 基于当前容器创建 ...
- 在 WPF 应用程序中缓存应用程序数据
参考学习链接:https://docs.microsoft.com/zh-cn/dotnet/framework/wpf/advanced/walkthrough-caching-applicatio ...
- Typecho 引入 DPlayer
想在文章中插入视频,尝试 iframe 和 video 标签后发现 m3u8 流会触发下载无法播放,用 hls 该问题后,碰到了 403 forbbiden.联想到前些天新浪图床加 referrer ...
- 大数据之路Week08_day02 (Flume 三个组件Source, channel, sink)
在使用之前,先介绍组件Flume的特点和一些组件 Flume的优势: 1. Flume可以将应用产生的数据存储到任何集中存储器中,比如HDFS,HBase 2. 当收集数据的速度超过将写入数据的时候, ...
- python基础-函数(函数参数、返回值、执行、传参、作用域、函数名)
前言 !!!注意:本系列所写的文章全部是学习笔记,来自于观看视频的笔记记录,防止丢失.观看的视频笔记来自于:哔哩哔哩武沛齐老师的视频:2022 Python的web开发(完整版) 入门全套教程,零基础 ...
- 如何让低于1B参数的小型语言模型实现 100% 的准确率
如何让低于1B参数的小型语言模型实现 100% 的准确率 上下文学习被低估了--ICL 是提升性能的秘密钥匙--教会 AI 说"我不知道"--第 2 部分 Fabio Matric ...
- 为什么AI教师难以实现
提供AI应用咨询+陪跑服务,有需要回复1 本周为一家教育公司提供了全天的AI的培训,后续涉及AI+教育领域的项目开发,而我去年就做过AI教师项目,所以对AI+教育有一定熟悉度. 下来后又拜访了一家互联 ...
- .NET 中的 Swagger 文档排序设置
Swagger的API默认排序往往达不到效果,甚至设置了Action排序也没有作用.这里直接给出代码,关键在于 IDocumentFilter 实现. 注意 DocumentFilter 注册要放在尾 ...
- Win环境下的批处理命令和JScript脚本结合使用笔记
最近工作有接触到.bat 批处理命令,在Win环境下编写的时候基于以前的编码习惯,觉得批处理语法可读性较差,于是学习了解了一下结合JScript的用法,特此记录. 什么是JScript JScript ...
- 【服务器】npm配置国内镜像源
[服务器]npm配置国内镜像源 零.问题 配置Node.js的HTTPS的时候,下载不了 一.解决 这里使用的是淘宝的镜像: npm config set registry https://regis ...