今天给progressbar设置样式时遇到一个略弱的问题,
需求,给进度条底色设置为红色,已经走过的进度设置为绿色
问题:无论我进度条设置进度值为多少,进度条都是整条显示绿色,这是进度为100时才该出现的情况。
声明progressbar的代码如下
<ProgressBar
android:id="@+id/loadProgress"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="20dip"
android:max="100"
android:progressDrawable="@drawable/load_progress"
android:progress="0" />
定义@drawable/load_progress
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@android:id/background"
android:drawable="@drawable/background_bk">
</item>
<item
android:id="@android:id/progress"
android:drawable="@drawable/progress_bk">
</item>
</layer-list>
定义@drawable/background_bk (红色)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="0"
android:endColor="#ff0000"
android:startColor="#ff0990" />
<stroke
android:width="1dp"
android:color="#ff0000" />
</shape>
定义@drawable/progress_bk (绿色)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="0"
android:endColor="#00ff00"
android:startColor="#00ff00" />
<stroke
android:width="1dp"
android:color="#00ff00" />
</shape>
![]() |
1
Registering OP |