我正在尝试根据不同级别更改进度条颜色。
进度条使用的Drawable
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:maxLevel="1" android:drawable="@drawable/progress_horizontal_green"/>
<item android:maxLevel="2" android:drawable="@drawable/progress_horizontal_red"/>
</layer-list>
我正在加载进度条:
// viewHolder.budgetProgress is a ProgressBar
viewHolder.budgetProgress.setMax(100);
// No matter what level I change, the drawable used is always the lowest one.
viewHolder.budgetProgress.getProgressDrawable().setLevel(0);
viewHolder.budgetProgress.setProgress(95);
问题在于使用的drawable总是最低的,所以在这种情况下是红色。如果我更换progress_horizontal_red
和progress_horizontal_green
,则进度条始终为绿色。