2013-01-15 93 views

回答

21

ProgressBar是一個視圖(如TextView,ImageView,Button等等),它可以在你的佈局中用來顯示一些進度。

ProgressDialog是一個帶有「內置」ProgressBar的對話框。可以使用對話框讓用戶在計算某些東西時等待。 ProgressDialog使您可以更輕鬆地在對話框中顯示計算進度。

0

當你的迭代是可數(在做循環操作,執行代碼x倍等)的使用進度,如果任務不是可數的狀態(如調用Web服務)使用ProgressDialog

從Android文檔

ProgressBar:在某些操作中視覺指示器的進度。向用戶顯示一個條形圖,表示操作已經進行了多長時間;應用程序可以在前進時更改進度量 (修改小節的長度)。在進度條上還可顯示 輔助進度,這對於顯示中間進度(如 流式播放進度欄期間的緩衝級別)有用。

ProgressDialog:顯示進度指示器和可選 文本消息或視圖的對話框。 同時只能使用短信或視圖。

37

ProgressBar

ProgressDialog

ProgressBarViewProgressDialogDialog

+1

這應該是公認的答案。 – learner

4

除了差異答案的其餘部分中指出,應該考慮以下建議從Dialogs @ Android Developer

避免ProgressDialog

Android包含另一個名爲ProgressDialog對話框類顯示 帶進度條的對話框。但是,如果您需要指明裝載 或不確定的進度,則應該遵循的設計進展&活動 準則和您的 佈局使用ProgressBar

它也可以有用考慮如下回答:

29

雖然這裏的答案是信息,沒有真正解決問題。

  • 如果要阻止用戶在等待時與應用程序進行交互,請使用ProgressDialog。對話方面 凍結了用戶做任何事情,直到它被解僱。請注意ProgressDialog背後的用戶界面如何灰顯並且無法訪問。

ProgressDialog example

  • 使用一個進度指示某些在你的應用程序仍然是 等待(裝載,思考,等等),而用戶仍然可以與其他 部分進行交互。在這張圖片中,用戶仍然可以在等待gps回覆時填寫表格。

ProgressBar Example

(感謝Johnny S的ProgressDialog的圖像。)

+0

也爲pDialog,你不能使用後退箭頭解僱它,而你可以使用它與pBar – monim