成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

開發文檔代碼示例工程Dialog的完全解析

開發 前端
ToastDialog是在窗口上方彈出的對話框,是通知操作的簡單反饋。ToastDialog會在一段時間后消失,在此期間,用戶還可以操作當前窗口的其他組件。

[[415358]]

 想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

本文引言

學習編程,就應該用代碼筑基,拿項目蓋樓!最近學習《鴻蒙操作系統開發入門經典》,邊寫邊敲示例代碼,提升明顯。但總覺得例子化的代碼還是差了點東西,遂根據官方提供的代碼示例工程進行學習和解析,和盡力二創。

開發文檔-代碼示例工程

一、概述

ToastDialog是在窗口上方彈出的對話框,是通知操作的簡單反饋。ToastDialog會在一段時間后消失,在此期間,用戶還可以操作當前窗口的其他組件。

而基于CommonDialog我們們可以封裝更多的彈框。

幫大家翻譯一下:

二、工程演示

吐槽!原示例工程的按鈕和字體巨小!!!!眼睛都無了!我把字調大了。

進入HAP

顯而易見有四個按鈕,即有四種反饋!

  • common dialog:一般的信息反饋對話框
  • list dialog:列表對話框
  • multiselect dialog:對選對話框
  • custom dialog:自定義對話框

  • 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了哈哈哈。

  1. //通過addTextObserver實現從start到count輸入框的跳轉 
  2. private void setObserver(TextField textField, Component textFieldNext) { 
  3.     textField.addTextObserver((string, start, before, count) -> matchNumber(string, textField, textFieldNext)); 
  4.  
  5. private void matchNumber(String string, TextField textField, Component textFieldNext) { 
  6.     boolean isMatch = Pattern.matches(PATTERN, string); 
  7.     if (isMatch) { 
  8.         textField.setText(string); 
  9.     } 
  10.     if (textFieldNext != null) { 
  11.         textFieldNext.requestFocus(); 
  12.     } 

本文總結

  • 每日一更!不能斷更!!!!哈哈哈哈保持學習。
  • 對于代碼示例工程提一點建議:布局中的text的值并沒有用element中的string.json存儲。致使代碼不規范
  • 代碼已經格式化放心食用
  • 對于ListDialog、CommonDialog、自定義彈窗有了一個基本演示和解析,但其完整API如下;

其中DisplayDialog很有意思:

 想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2021-08-16 14:42:28

鴻蒙HarmonyOS應用

2023-09-15 14:29:57

Android開發語言

2012-08-10 10:02:21

PHP

2021-08-12 10:02:08

鴻蒙HarmonyOS應用

2009-12-24 13:51:49

WPF文檔打印

2013-06-04 17:23:55

Android開發移動開發Fragment

2011-08-12 14:39:00

iPhoneSDK

2010-03-15 09:41:50

Windows 8開發文檔

2009-12-07 15:41:51

PHP圖片加水印

2010-02-24 13:38:18

WCF PreCal模

2021-07-27 11:39:40

鴻蒙HarmonyOS應用

2021-07-19 10:10:25

鴻蒙HarmonyOS應用

2009-12-02 10:49:59

PHP解析XML元素結

2011-08-12 11:22:53

Oracle存儲過程Java

2009-12-18 16:00:29

Ruby獲取當前類名

2010-02-22 15:06:31

WCF信道監聽器

2011-08-10 19:01:18

Objective-C

2010-03-22 17:53:50

Python字符Python字符串

2010-01-14 13:08:37

VB.NET運算符

2010-03-05 15:01:29

Python解析XML
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品一区二区三区在线观看 | 日韩黄色免费 | 97伦理电影 | 欧美一区不卡 | 黑人巨大精品欧美一区二区免费 | 伊人网综合 | 一级毛片视频免费观看 | 亚洲第一在线 | 成人精品视频在线观看 | 精品中文字幕一区二区 | 毛片久久久 | 黄色片在线 | 欧美在线高清 | 国产精品久久久久久妇女6080 | 国产精品亚洲一区二区三区在线观看 | 中文字幕一区二区三区在线观看 | 欧美一级淫片免费视频黄 | 亚洲欧美日韩在线不卡 | 成人小视频在线观看 | 精品中文字幕一区 | 精品国产亚洲一区二区三区大结局 | 亚洲精品一区二区三区蜜桃久 | 黄色大片网站 | 在线观看中文视频 | 免费视频一区二区 | 国产精品美女久久久久久久久久久 | 波多野结衣一区二区 | 国产三区在线观看视频 | 国产精品久久久爽爽爽麻豆色哟哟 | 欧美日韩高清在线观看 | 日韩欧美视频 | 日本一二区视频 | 国产99视频精品免视看9 | 中文字幕第九页 | 欧美精品久久久久 | 国产精品美女www爽爽爽视频 | 免费看淫片 | 国产区在线 | 国产福利一区二区 | 亚洲在线成人 | 欧美成人a∨高清免费观看 老司机午夜性大片 |