web-dev-qa-db-ja.com

ProgressbarとprogressDialogの違いは何ですか?

私はどこでも検索し、Googleの公式ドキュメントを読みました。しかし、私はまだそれらの違いを見ていません。

ProgressBarをいつ使用する必要があり、ProgressDialogをいつ使用する必要がありますか?

26
Mathieu

ProgressBarはビュー(TextView、ImageView、Buttonなど)であり、レイアウトで使用して進行状況を表示できます。

ProgressDialogは、「組み込み」のProgressBarを備えたダイアログです。ダイアログを使用して、何かが計算されている間、ユーザーを待機させることができます。 ProgressDialogを使用すると、計算の進行状況をダイアログで簡単に表示できます。

24
Berťák

ProgressBar

ProgressDialog

ProgressBarViewProgressDialogDialogです。

38
Ahmad

ここでの回答は有益ですが、実際に質問に対処するものはありません。

  • 待機中にユーザーがアプリケーションと対話できないようにする場合は、ProgressDialogを使用します。ダイアログアスペクトは、ユーザーが却下されるまで何もできないようにします。 ProgressDialogの背後にあるUIがグレー表示され、アクセスできないことに注意してください。

ProgressDialog example

  • ProgressBarを使用して、ユーザーが他の部分と対話している間、アプリ内の何かがまだ待機していること(読み込み、思考など)を示します。この画像では、ユーザーはgpsの応答を待っている間もフォームに入力できます。

ProgressBar Example

(ProgressDialogの画像を提供してくれた Johnny S に感謝します。)

30
Scott Biggs

残りの回答で指摘されている違いに加えて、 Dialogs @ Android Developer :からの次の推奨事項を考慮する必要があります。

ProgressDialogを回避する

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

次の回答を検討することも役立つ場合があります。

4
leo9r

反復がカウント可能である場合(ループで操作を実行する、コードをx回実行するなど)、ProgressBarを使用します。タスクがカウント可能でない場合(Webサービスの呼び出しなど)、ProgressDialogを使用します。

Androidドキュメントから

ProgressBar:一部の操作の進行状況を視覚的に示します。操作がどこまで進んだかを表すバーをユーザーに表示します。アプリケーションは、前進するにつれて進行量(バーの長さを変更)を変更できます。プログレスバーには、ストリーミング再生プログレスバー中のバッファレベルなど、中間のプログレスを表示するのに役立つセカンダリプログレスも表示されます。

ProgressDialog:進行状況インジケーターとオプションのテキストメッセージまたはビューを表示するダイアログ。同時に使用できるのはテキストメッセージまたはビューのみです。

0
hkutluay