自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

鴻蒙開源三方組件 -- 對(duì)話彈窗工具DialogUtil組件

開源
material風(fēng)格,ios風(fēng)格,自動(dòng)獲取頂層ability,可在任意界面彈出,可在任意線程彈出。安全,任意線程均可調(diào)用。

 [[415881]]

想了解更多內(nèi)容,請?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

前言

material風(fēng)格,ios風(fēng)格,自動(dòng)獲取頂層ability,可在任意界面彈出,可在任意線程彈出。

基于安卓平臺(tái)的DialogUtil組件(https://github.com/hss01248/DialogUtil)

實(shí)現(xiàn)了鴻蒙化,代碼已經(jīng)開源到(https://gitee.com/openneusoft/dialog-util)

歡迎各位下載使用并提出寶貴意見!。

特性

  • 安全,任意線程均可調(diào)用。
  • 類型豐富,包括常用的ios風(fēng)格dialog和material design風(fēng)格的dialog,且按鈕和文字樣式可便捷地修改。
  • 自定義view:可以傳入自定義的view,定義好事件,本工具負(fù)責(zé)安全地顯示。
  • 也可以保留iso樣式或material 樣式的底部按鈕和上方title(可隱藏),中間的view可以完全自定義。
  • 也可以設(shè)置寬高百分比來自定義寬高。
  • 可以關(guān)閉默認(rèn)的陰影背景,從而能使用xml中自定義的背景(彈出自定義view的dialog時(shí)常用)。
  • ios樣式和material 樣式的均可以在三種狀態(tài)下顯示: 普通dialog,TYPE_TOAST。
  • 支持帶x的廣告樣式的動(dòng)畫。

組件示例效果

集成方式

方式一:

通過library生成har包,添加har包到libs文件夾內(nèi)。

在entry的gradle內(nèi)添加如下代碼:

  1. implementation fileTree(dir:'libs', include:['*.jar','*.har']) 

方式二:

  1. allprojects{ 
  2.     repositories{ 
  3.         mavenCentral() 
  4.     } 
  5. implementation 'io.github.dzsf:DialogUtil:1.0.0' 

如何使用

初始化

  1. //在Ability的onStart方法里: 
  2. 傳入context 
  3. StyledDialog.init(this); 

示例代碼(MainAbilitySlice里)

  1. //使用默認(rèn)樣式時(shí),無須.setxxx: 
  2.   StyledDialog.buildLoading().show(); 
  3.    
  4.   //自定義部分樣式時(shí): 
  5.   StyledDialog.buildMdAlert("title", msg,  new MyDialogListener() { 
  6.               @Override 
  7.               public void onFirst() { 
  8.                   showToast("onFirst"); 
  9.               } 
  10.  
  11.               @Override 
  12.               public void onSecond() { 
  13.                   showToast("onSecond"); 
  14.               } 
  15.  
  16.               @Override 
  17.               public void onThird() { 
  18.                   showToast("onThird"); 
  19.               } 
  20.  
  21.  
  22.           }) 
  23.                   .setBtnSize(20) 
  24.                   .setBtnText("i","b","3"
  25.                   .show(); 

相關(guān)回調(diào) MyDialogListener

  1. public abstract void onFirst();//md-確定,ios-第一個(gè) 
  2.     public abstract void onSecond();//md-取消,ios-第二個(gè) 
  3.     public void onThird(){}//md-netural,ios-第三個(gè) 
  4.  
  5.     public void onCancle(){} 
  6.  
  7.     /** 
  8.      * 提供給Input的回調(diào) 
  9.      * @param input1 
  10.      * @param input2 
  11.      */ 
  12.     public void onGetInput(CharSequence input1,CharSequence input2){ 
  13.  
  14.     } 
  15.  
  16.     /** 
  17.      * 提供給MdSingleChoose的回調(diào) 
  18.      * @param chosen 
  19.      * @param chosenTxt 
  20.      */ 
  21.     public void onGetChoose(int chosen,CharSequence chosenTxt){ 
  22.  
  23.     } 
  24.  
  25.     /** 
  26.      * 提供給MdMultiChoose的回調(diào) 
  27.      * @param states 
  28.      */ 
  29.     public void onChoosen( List<Integer> selectedIndex, List<CharSequence> selectedStrs,boolean[] states){ 
  30.  
  31.     } 

MyItemDialogListener

  1. /** 
  2.     * IosSingleChoose,BottomItemDialog的點(diǎn)擊條目回調(diào) 
  3.     * @param text 
  4.     * @param position 
  5.     */ 
  6.   public abstract void onItemClick(CharSequence text, int position); 
  7.  
  8.  
  9.    /** 
  10.     * BottomItemDialog的底部按鈕(經(jīng)常是取消)的點(diǎn)擊回調(diào) 
  11.     */ 
  12.   public void onBottomBtnClick(){} 

最后必須調(diào)用show(),返回dialog對(duì)象

progress dialog 的進(jìn)度更新

  1. /** 
  2.  *  可以在任何線程調(diào)用 
  3.  * @param dialog 傳入show方法返回的對(duì)象 
  4.  * @param progress 
  5.  * @param max 
  6.  * @param msg 如果是轉(zhuǎn)圈圈,會(huì)將msg變成msg:78%的形式.如果是水平,msg不起作用 
  7.  * @param isHorizontal 是水平線狀,還是轉(zhuǎn)圈圈 
  8.  */ 
  9. public static void updateProgress( Dialog dialog, int progress,  int max,  CharSequence msg,  boolean isHorizontal) 

附錄1:相關(guān)資料

IDE官方下載地址:https://developer.harmonyos.com/cn/develop/deveco-studio

想了解更多內(nèi)容,請?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2021-04-28 15:07:06

鴻蒙HarmonyOS應(yīng)用

2021-08-02 14:54:50

鴻蒙HarmonyOS應(yīng)用

2021-03-10 15:03:40

鴻蒙HarmonyOS應(yīng)用

2021-04-29 14:32:24

鴻蒙HarmonyOS應(yīng)用

2021-04-28 09:56:44

鴻蒙HarmonyOS應(yīng)用

2021-07-06 18:21:31

鴻蒙HarmonyOS應(yīng)用

2021-08-04 14:16:41

鴻蒙HarmonyOS應(yīng)用

2021-08-03 10:07:41

鴻蒙HarmonyOS應(yīng)用

2021-03-24 09:30:49

鴻蒙HarmonyOS應(yīng)用

2021-08-03 12:47:58

鴻蒙HarmonyOS應(yīng)用

2021-11-17 15:37:43

鴻蒙HarmonyOS應(yīng)用

2021-08-10 15:23:08

鴻蒙HarmonyOS應(yīng)用

2021-10-19 10:04:51

鴻蒙HarmonyOS應(yīng)用

2021-08-26 16:07:46

鴻蒙HarmonyOS應(yīng)用

2021-04-08 14:57:52

鴻蒙HarmonyOS應(yīng)用

2021-04-20 15:06:42

鴻蒙HarmonyOS應(yīng)用

2021-08-05 15:06:30

鴻蒙HarmonyOS應(yīng)用

2021-08-30 17:55:58

鴻蒙HarmonyOS應(yīng)用

2021-03-01 14:00:11

鴻蒙HarmonyOS應(yīng)用

2021-01-27 10:04:46

鴻蒙HarmonyOS動(dòng)畫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)