/ / Зміна чернетки на Android ProgressBar - андроїд, смуга прогресу

Змініть розміри на Android ProgressBar - Android, панель прогресу

Я отримав progress_incomplete.xml та progress_complete.xml

Обидва файли виглядають так (я видалив усі градієнти та інформацію про обведення, щоб зберегти місце як не дуже важливе).

По суті, файл Complete.xml має жовтий колір, а повний - зелений.

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
...
</shape>
</item>

<item android:id="@android:id/secondaryProgress">
<clip>
<shape>
...
</shape>
</clip>
</item>
<item
android:id="@android:id/progress"
>
<clip>
<shape>
...
</shape>
</clip>
</item>

</layer-list>

У моєму файлі Java у мене є таке:

            if (percentage == 100)
{
// Change colour
progressBar.setProgressDrawable(R.drawable.progress_complete);
}

Я знаходжу це не працюю, хоча. Я також спробував setBackground і setBackgroundDravable, але зміна не набула чинності.

Що я роблю?

Дякую

Відповіді:

2 для відповіді № 1
if (percentage == 100) {
// Change colour
Drawable drawable = getResources().getDrawable(R.drawable.progress_complete);
progressBar.setProgressDrawable(drawable);
}

0 для відповіді № 2

Посилання це відповідь на ТАК, ви можете спробувати це рішення. Це може вирішити вашу проблему.

if (percentage == 100)

{
// Change colour
Rect bounds = progressBar.getProgressDrawable().getBounds();
progressBar.setProgressDrawable(R.drawable.progress_complete);
progressBar.getProgressDrawable().setBounds(bounds);
}