Существует ли черный индикатор выполнения, чтобы быть видимым на белом фоне?

Колесо прогресса по умолчанию на Android не отображается хорошо, когда фон является белым, это едва видимо. Как я могу зафиксировать это?

21
задан Pentium10 14 May 2010 в 17:20
поделиться

3 ответа

Если вы посмотрите на встроенный файл styles.xml и ткните по платформа встроена в чертежи, оказывается, решение довольно простое. Вы можете использовать атрибут style, чтобы использовать обратный индикатор выполнения:

<ProgressBar
    android:id="@+id/progress_bar"
    android:layout_width="40dip"
    android:layout_height="40dip"
    android:padding="6dp"
    android:indeterminate="true"
    style="?android:attr/progressBarStyleInverse"
    />
50
ответ дан 29 November 2019 в 06:46
поделиться

Я не думаю, что есть способ исправить это, поскольку прогрессбар зависит от sdk. Оранжевый на 1.5, белый на 1.6 и т.д... зеленый на некоторых устройствах и т.д. и т.п....

Вам придется реализовать/переопределить его с вашей собственной графикой, чтобы изменить его.

У меня была похожая проблема, я решил ее, установив контрастный фон на прогрессбаре. (50% прозрачный черный)

Вот похожая проблема с использованием горизонтального прогрессбара с применением пользовательского цвета: Как изменить цвет прогрессбара в Android

Циркуляр немного отличается, я думаю, но, вероятно, это не невозможно ;-)

2
ответ дан 29 November 2019 в 06:46
поделиться

Если у вас белый фон, обязательно установите тему в манифесте на @android:style/Theme.Light. Это обеспечит ресурсы для всех виджетов для светлого фона.

4
ответ дан 29 November 2019 в 06:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: