0

Android で同様の画面が必要です。つまり、進行状況インジケーターをアラート ビュー内に配置します。

ここに画像の説明を入力

4

4 に答える 4

1

AndroidにはProgressDialog、ほぼ同じことを実行でき、ダイアログを表示し、タイトルとメッセージを表示し、不確定な進行状況インジケーターも表示できますが、スクリーンショットとは少し異なって見えます。

ただし、ProgressDialog読み込み中または不確定な進行状況を示すためにを使用することは、Androidのドキュメントではアドバイスされていません。

ProgressDialogの回避
Androidには、プログレスバー付きのダイアログを表示するProgressDialogと呼ばれる別のダイアログクラスが含まれています。ただし、読み込み中または不確定な進行状況を示す必要がある場合は、代わりに進行状況とアクティビティの設計ガイドラインに従い、レイアウトでProgressBarを使用する必要があります。

したがって、カスタムダイアログを定義する必要があります。

于 2013-01-03T09:35:49.040 に答える
0

CustomAlertDialogレイアウトからビューを膨らませて作成します。

プロパティをとで指定してそのレイアウトの中央に配置RelativeLayoutできるように、レイアウトはにある必要があります。ProgessDialogCENTER_HORIZONTALCENTER_VERTICAL

参照:リンク

于 2013-01-03T09:33:12.763 に答える
0
  1. ダイアログコンテンツのレイアウトxmlを作成します。
  2. ビューにそれを膨らませます。
  3. ビューでALertDialog.setViewを呼び出します
于 2013-01-03T09:22:53.917 に答える
0
   private static final int DIALOG_PROGRESS = 4;
  private ProgressDialog mProgressDialog;
        private int mProgress;
        private Handler mProgressHandler;

        @Override
        protected Dialog onCreateDialog(int id) {
            switch (id) {
            case DIALOG_PROGRESS:
                mProgressDialog = new ProgressDialog(Test.this);
                mProgressDialog.setIconAttribute(android.R.attr.alertDialogIcon);
                mProgressDialog.setTitle("R.string.select_dialog");
                mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
                mProgressDialog.setMax(MAX_PROGRESS);
                mProgressDialog.setButton(DialogInterface.BUTTON_POSITIVE,
                        "R.string.alert_dialog_hide", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int whichButton) {

                        /* User clicked Yes so do some stuff */
                    }
                });
                mProgressDialog.setButton(DialogInterface.BUTTON_NEGATIVE,
                        "R.string.alert_dialog_cancel", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int whichButton) {

                        /* User clicked No so do some stuff */
                    }
                });
                return mProgressDialog;
            }
            return null;
        }

        /**
         * Initialization of the Activity after it is first created.  Must at least
         * call {@link android.app.Activity#setContentView(int)} to
         * describe what is to be displayed in the screen.
         */
        @Override
      protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            showDialog(DIALOG_PROGRESS);
            mProgressHandler = new Handler() {
                @Override
                public void handleMessage(Message msg) {
                    super.handleMessage(msg);
                    if (mProgress >= MAX_PROGRESS) {
                        mProgressDialog.dismiss();
                    } else {
                        mProgress++;
                        mProgressDialog.incrementProgressBy(1);
                        mProgressHandler.sendEmptyMessageDelayed(0, 100);
                    }
                }
            };
        }
    }

ここから参照すると、Handler メソッドで処理して簡単に取得できます。

于 2013-01-03T09:31:41.857 に答える