Практическое использование ContentLoadingProgressBar
Я проходил через сайт разработчика android, и я нашел класс с именем ContentLoadingProgressBar. Увидев этот класс, я задаю себе несколько вопросов. Было бы здорово, если бы кто-нибудь ответил на мои вопросы.
- в чем разница между нормальным
ProgressBar
иContentLoadingProgressbar
? - каково практическое использование ContentLoadingProgressBar?
можем мы показать / спрятать это progressbar согласно нашему требование?
Как я могу настроить этот progressBar?
Спасибо за вашу помощь заранее. Было бы здорово, если бы кто-то объяснил это с помощью кодов и примеров. Спасибо.
3 ответов
вот мои ответы!
в чем разница между нормальным ProgressBar и ContentLoadingProgressbar?
ContentLoadingProgressbar
ожидает минимальное время, чтобы быть уволены, прежде чем показывать с помощью hide()
как с-в 0.5 секундах.Так что даже show()
вызывается, это может быть уволен прежде, чем он появится на экране.
каково практическое использование ContentLoadingProgressBar
это предотвращает очень быстро мерцающий материал, который вы можете увидеть с "наивными" реализациями.
можем мы показать / спрятать это progressbar согласно нашему требованию
да
как я могу пользовательский стиль этот progressBar
<android.support.v4.widget.ContentLoadingProgressBar
android:id="@+id/address_looking_up"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:visibility="visible" />
заменить стиль с android:theme
https://stackoverflow.com/a/38282149/5188159
предположим, вы хотите показать ProgressBar для некоторой фоновой операции, которая может занять
- вы вызываете progressBar.шоу.)( Вы начинаете фоновую операцию.
-
Если ваша деятельность предпосылки сверх в пределах 500ms. Затем вы вызываете progressBar.hide ()
теперь пользователь увидит мерцание индикатора выполнения появляется и исчезает в течение доли секунды второй.
вводим ContentLoadingProgressBar:
при использовании этого progressbar, то он будет ждать в течение минимального времени, прежде чем показывать диалог прогресса. Это означает, что если время между вызовом show() и вызовом hide() меньше этого минимального времени, то не будет никакого диалога, который будет показан пользователю.
по словам docs :
ContentLoadingProgressBar реализует ProgressBar, который ожидает минимальное время, чтобы быть уволены перед отображением. Как только он будет виден, индикатор выполнения будет виден в течение минимального времени, чтобы избежать "вспышек" в пользовательском интерфейсе, когда событие может занять в значительной степени переменное время (от none до воспринимаемого пользователем количества)
это явно упоминает его не отличается от обычного ProgressBar
. Кроме того, это настройка пользовательского интерфейса, чтобы быть точным. т. е. ContentLoadingProgressBar
не появится, если hide()
называется по-меньше!--3--> после выполнения show()
, таким образом предотвращающ от быстрый мелькать в UI
. Надеюсь, это поможет.