Я искал везде и читал официальный документ Google. Но я до сих пор не вижу разницы между ними.
Когда нам следует использовать ProgressBar, а когда - ProgressDialog?
Я искал везде и читал официальный документ Google. Но я до сих пор не вижу разницы между ними.
Когда нам следует использовать ProgressBar, а когда - ProgressDialog?
ProgressBar - это View (например, TextView, ImageView, Button и т. Д.), Который можно использовать в вашем макете, чтобы показать некоторый прогресс.
ProgressDialog - это диалог со «встроенным» ProgressBar. Диалоги можно использовать, чтобы заставить пользователя ждать, пока что-то вычисляется. ProgressDialog упрощает отображение прогресса ваших вычислений в диалоге.
ProgressBar
:
ProgressDialog
:
ProgressBar
- это View
, ProgressDialog
- это Dialog
.
Хотя ответы здесь информативны, никто на самом деле не отвечает на этот вопрос.
(Спасибо Johnny S за изображение ProgressDialog.)
В дополнение к различиям, указанным в остальных ответах, вы должны принять во внимание следующую рекомендацию от Dialogs @ Android Developer:
Избегайте ProgressDialog
Android включает еще один класс диалогового окна, называемый
ProgressDialog
, который показывает диалоговое окно с индикатором выполнения. Однако, если вам нужно указать загрузку или неопределенный прогресс, вам следует вместо этого следовать рекомендациям по дизайну для Прогресс и активность и использоватьProgressBar
в макете.
Также может быть полезно рассмотреть следующие ответы:
Когда ваши итерации являются счетными (выполнение операций в цикле, выполнение кода x раз и т. Д.), Используйте ProgressBar, если задача не является счетным статусом (например, вызов веб-службы), используйте ProgressDialog
Из документации Android
ProgressBar: визуальный индикатор выполнения некоторой операции. Отображает полосу для пользователя, показывающую, насколько продвинулась операция; приложение может изменять степень прогресса (изменяя длину полосы) по мере продвижения вперед. Также имеется вторичный прогресс, отображаемый на индикаторе выполнения, который полезен для отображения промежуточного прогресса, такого как уровень буфера во время индикатора выполнения потокового воспроизведения.
ProgressDialog: диалоговое окно с индикатором выполнения и дополнительным текстовым сообщением или представлением. Одновременно можно использовать только текстовое сообщение или представление.