您现在的位置是:亿华云 > 域名
开发文档代码示例工程Dialog的完全解析
亿华云2025-10-03 06:40:38【域名】1人已围观
简介想了解更多内容,请访问:和华为官方合作共建的鸿蒙技术社区https://harmonyos.51cto.com本文引言学习编程,就应该用代码筑基,拿项目盖楼!最近学习《鸿蒙操作系统开发入门经典》,边写
想了解更多内容,文档请访问:
和华为官方合作共建的代码的完鸿蒙技术社区
https://harmonyos.51cto.com
本文引言
学习编程,就应该用代码筑基,示例拿项目盖楼!最近学习《鸿蒙操作系统开发入门经典》,工程边写边敲示例代码,全解提升明显。文档但总觉得例子化的代码的完代码还是差了点东西,遂根据官方提供的示例代码示例工程进行学习和解析,和尽力二创。工程
开发文档-代码示例工程
一、全解概述
ToastDialog是文档在窗口上方弹出的对话框,是代码的完通知操作的简单反馈。ToastDialog会在一段时间后消失,示例在此期间,工程用户还可以操作当前窗口的全解其他组件。
而基于CommonDialog我们们可以封装更多的香港云服务器弹框。
帮大家翻译一下:
二、工程演示
吐槽!原示例工程的按钮和字体巨小!!!!眼睛都无了!我把字调大了。
进入HAP
显而易见有四个按钮,即有四种反馈!
common dialog:一般的信息反馈对话框 list dialog:列表对话框 multiselect dialog:对选对话框 custom dialog:自定义对话框三、工程项目解析
框架解析
四、Layout布局解析
main_ability_slice
主页面 布局:DirectionalLayout-方向布局(vertical竖直排列) 组件与页面对应:custom_dialog_content
自定义页面 布局:最外层DirectionalLayout方向布局—Text组件—内层包含六个TextField组件的DirectionalLayout—Button组件 注解:五、graphic文件解析
此文件下的都是以xml形式(svg会被编译器转为xml)的背景设置。在layout文件下的xml进行背景设置,如下:
为演示方便。把所有集合到一个xml进行注解。
六、MainAbility解析
关键点:
回调函数onStart。读者如果对生命周期函数不是很懂建议点击链接读下文:开发文档——Page Ability生命周期
setMainRoute配置默认展示的AbilitySlice七、utils下的LogUtil解析
此文件是基于HiLog日志模块的打印日志文件。云服务器
具体如何打印和如何注意事项不归属本文重点,可以参照下文
开发文档—HiLog
八、MainAbilitySlice解析
声明
关于设置页面的不赘述直接进入自定义函数initComponents()的解析:
关于几个show的解析
基本都是字面意思 关键在于几个关键功能的实现如单选、多选需要大家多熟悉自定义弹框
九、custom文件的解析
难点在于TextField的应用,而不是CustomDialog了哈哈哈。
//通过addTextObserver实现从start到count输入框的跳转 private void setObserver(TextField textField, Component textFieldNext) { textField.addTextObserver((string, start, before, count) -> matchNumber(string, textField, textFieldNext)); } private void matchNumber(String string, TextField textField, Component textFieldNext) { boolean isMatch = Pattern.matches(PATTERN, string); if (isMatch) { textField.setText(string); } if (textFieldNext != null) { textFieldNext.requestFocus(); } }本文总结
每日一更!不能断更!!!!哈哈哈哈保持学习。 对于代码示例工程提一点建议:布局中的text的值并没有用element中的string.json存储。致使代码不规范 代码已经格式化放心食用 对于ListDialog、CommonDialog、自定义弹窗有了一个基本演示和解析,但其完整API如下;其中DisplayDialog很有意思:
想了解更多内容,请访问:
和华为官方合作共建的鸿蒙技术社区
https://harmonyos.51cto.com
很赞哦!(4)