Подтвердить что ты не робот

В чем разница между Progressbar и progressDialog?

Я искал всюду и читал официальный документ Google. Но я до сих пор не вижу разницы между ними.

Когда мы должны использовать ProgressBar и когда мы должны использовать ProgressDialog?

4b9b3361

Ответ 1

ProgressBar - это представление (например, TextView, ImageView, Button и т.д.), которые можно использовать в вашем макете, чтобы показать некоторый прогресс.

ProgressDialog - это диалог с встроенным ProgressBar. Диалоги могут использоваться, чтобы заставить пользователя ждать, пока что-то вычисляется. ProgressDialog упрощает отображение результатов ваших вычислений в диалоговом окне.

Ответ 2

ProgressBar:

ProgressDialog:

ProgressBar является View, ProgressDialog является Dialog.

Ответ 3

Хотя ответы здесь информативны, никто не решает вопрос.

  • Используйте ProgressDialog, если вы хотите запретить пользователю взаимодействуя с приложением во время ожидания. Аспект Диалога Замораживает пользователя от чего-либо, пока он не будет уволен. Обратите внимание, что пользовательский интерфейс за ProgressDialog недоступен и недоступен.

ProgressDialog example

  • Используйте ProgressBar, чтобы указать, что что-то в вашем приложении все еще ожидание (загрузка, мышление и т.д.), пока пользователь все еще может взаимодействовать с другие части. На этом изображении пользователь все равно может заполнять формы, ожидая ответа gps.

ProgressBar Example

(Благодаря Johnny S для изображения ProgressDialog.)

Ответ 4

В дополнение к различиям, указанным в остальных ответах, вы должны принять во внимание следующую рекомендацию Dialogs @Android Developer:

Избегайте ProgressDialog

Android включает еще один класс диалога под названием ProgressDialog, который показывает диалог с индикатором выполнения. Однако, если вам нужно указать загрузку или неопределенный прогресс, вы должны следовать за дизайном рекомендации для Прогресс и активность и используйте ProgressBar в своем макета.

Также полезно рассмотреть следующие ответы:

Ответ 5

Когда ваши итерации являются счетными (выполнение операций в цикле, выполнение кода x раз и т.д.), используйте ProgressBar, если задача не является счетной (например, для вызова веб-службы), используйте ProgressDialog

Из документации по android

ProgressBar: визуальный индикатор прогресса в некоторой операции. Отображает полосу для пользователя, показывающую, как далеко работает операция прогрессировала; приложение может изменить ход выполнения (изменение длины бара) по мере продвижения вперед. Существует также вторичный прогресс, отображаемый на индикаторе выполнения, который полезен для отображение промежуточного прогресса, такого как уровень буфера во время потокового воспроизведения.

ProgressDialog: диалог, показывающий индикатор прогресса и необязательный текстовое сообщение или представление. Только текстовое сообщение или представление могут использоваться на то же время.