|
[[415881]] 詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHarmonyOSテクノロジーコミュニティ。 https://harmonyos..com 序文マテリアル スタイル、iOS スタイル、トップレベルの機能を自動的に取得し、任意の画面にポップアップでき、任意のスレッドにポップアップできます。 Android プラットフォーム用の DialogUtil コンポーネント (https://github.com/hss01248/DialogUtil) これは HarmonyOS を使用して実装されており、コードは (https://gitee.com/openneusoft/dialog-util) でオープンソース化されています。 ぜひダウンロードしてご利用いただき、貴重なフィードバックをお寄せください。 特性- 安全であり、どのスレッドからも呼び出すことができます。
- よく使われる iOS スタイルのダイアログやマテリアル デザイン スタイルのダイアログなど、さまざまなダイアログ タイプが用意されており、ボタンやテキストのスタイルも簡単に変更できます。
- カスタムビュー: カスタムビューを渡してイベントを定義できます。このツールはビューの安全な表示を処理します。
- また、下部のボタンと上部のタイトル (非表示にすることもできます) を ISO またはマテリアル スタイルで保持し、中央のビューを完全にカスタマイズすることもできます。
- 幅と高さをパーセンテージで設定して、幅と高さをカスタマイズすることもできます。
- デフォルトの影の背景をオフにして、XML で定義されたカスタムの背景 (カスタム ビューでダイアログを表示するときによく使用される) を使用できるようにすることができます。
- iOS スタイルと Material スタイルはどちらも、通常のダイアログ、TYPE_TOAST の 3 つの状態で表示できます。
- 「x」マークが付いた広告スタイルのアニメーションをサポートします。
コンポーネント例の効果統合方法方法1: ライブラリを使用して .har パッケージを生成し、 .har パッケージを libs フォルダーに追加します。 エントリの Gradle ファイルに次のコードを追加します。 - 実装 fileTree(dir: 'libs' , include:[ '*.jar' , '*.har' ])
方法2: - すべてのプロジェクト{
- リポジトリ{
- mavenCentral()
- }
- }
- 実装'io.github.dzsf:DialogUtil:1.0.0'
使い方初期化- //AbilityのonStartメソッド内:
- コンテキストを渡す
- StyledDialog.init(これ);
サンプルコード(MainAbilitySlice内)- // デフォルトのスタイルを使用する場合、.setxxx は必要ありません。
- StyledDialog.buildLoading().show();
-
- //いくつかのスタイルをカスタマイズする場合:
- StyledDialog.buildMdAlert( "title" , msg, 新しいMyDialogListener() {
- @オーバーライド
- パブリックvoid onFirst() {
- showToast( "onFirst" );
- }
-
- @オーバーライド
- パブリックvoid onSecond() {
- showToast( "onSecond" );
- }
-
- @オーバーライド
- パブリックvoid onThird() {
- showToast( "onThird" );
- }
-
-
- })
- .setBtnSize(20)
- .setBtnText( "i" , "b" , "3" )
- 。見せる();
関連コールバック MyDialogListener- public abstract void onFirst(); // md - 確認、ios - 最初
- public abstract void onSecond(); //md-cancel、ios-second
- public void onThird(){} //md-netural、ios-third
-
- パブリックvoid onCancle(){}
-
- /**
- * 入力にコールバックが提供される
- * @param 入力1
- * @param 入力2
- /
- パブリックvoid onGetInput(CharSequence input1,CharSequence input2){
-
- }
-
- /**
- * MdSingleChoose にコールバックが提供されます
- * @param 選択された
- * @param 選択されたテキスト
- /
- パブリックvoid onGetChoose( int選択された文字、選択されたテキストの文字シーケンス){
-
- }
-
- /**
- * MdMultiChoose に提供されるコールバック
- * @param 状態
- /
- パブリックvoid onChoosen(List <Integer> selectedIndex, List<CharSequence> selectedStrs,boolean[] states){
-
- }
マイアイテムダイアログリスナー- /**
- * IosSingleChoose、BottomItemDialog のクリック項目コールバック
- * @param テキスト
- * @param 位置
- /
- public abstract void onItemClick(CharSequence text, int position);
-
-
- /**
- * BottomItemDialog 内の下部のボタン (多くの場合、キャンセル ボタン) のクリック コールバック。
- /
- パブリックvoid onBottomBtnClick(){}
最後に、ダイアログ オブジェクトを返すには、show() を呼び出す必要があります。進行状況ダイアログで進行状況が更新されます- /**
- * どのスレッドからでも呼び出すことができます
- * @param dialog show メソッドによって返されるオブジェクト。
- * @param 進捗状況
- * @param最大値
- * @param msg 回転する円の場合、msgをmsg:78%という形式に変換します。水平方向の場合、msgは何も影響を与えません。
- * @param isHorizontal: 水平線か螺旋か?
- /
- 公共 static void updateProgress( ダイアログ dialog, int progress, int max 、CharSequence msg、boolean isHorizontal)
付録1:関連資料 公式IDEダウンロードリンク: https://developer.harmonyos.com/cn/develop/deveco-studio 詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHarmonyOSテクノロジーコミュニティ。 https://harmonyos..com |