Как изменить цвет неопределенного ProgressBar?

У меня есть progressbar со следующим стилем: style="?android:attr/android:progressBarStyleSmall"

Печально панель является почти белой и в моем случае, отображенном на белом фоне. progressbar почти невидим из-за этого.

Как я могу изменить цвет progressbar? Более темно-серый был бы большим.

21
задан Janusz 17 August 2010 в 07:50
поделиться

3 ответа

Причина, по которой полоса имеет этот цвет, заключается в выбранном вами стиле. Это фиксированный стиль, в котором для создания элементов пользовательского интерфейса используются системные темы.

Посмотрите исходный код из здесь . Этот атрибут progressBarStyleSmall использует стили, определенные здесь .

<style name="Widget.ProgressBar.Small">
    <item name="android:indeterminateDrawable">@android:drawable/progress_small_white</item>
    <item name="android:minWidth">16dip</item>
    <item name="android:maxWidth">16dip</item>
    <item name="android:minHeight">16dip</item>
    <item name="android:maxHeight">16dip</item>
</style>

Просто создайте собственный стиль, следуя примеру исходного кода Android. Вам нужно будет заменить android: indeterminateDrawable на то, что вы хотите.

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

Мне было очень трудно изменить его цвет. Чтобы решить эту проблему, я получил код src для Android и создал свой собственный класс ProgressBar.

Не лучший ответ, но у меня он сработал.

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

И ответ уже был на SO:

stackoverflow.com/questions/2020882/how-to-change-progress-bars-progress-color-in-android

Вы можете просто изменить весь чертеж, который отображается на индикаторе выполнения через атрибут android: indeterminateDrawable .

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

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