ProgressBar 我们一般都是自定义的背景颜色,和进度条颜色,但是在代码中我们想要更换背景颜色和进度颜色就没有那么简单了,下面我就分别介绍下,自定义颜色(这个正常的android程序员都会)和在代码中更换背景颜色和进度颜色
1.自定义背景颜色和进度条颜色
在drawable里面新建一个xml文件选择layer-list
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<!--进度条背景颜色 -->
<item android:id="@android:id/background">
<shape>
<!--圆角大小 -->
<corners android:radius="5dip" />
<solid android:color="#cccccc"/>
</shape>
</item>
<!-- 设置进度条颜色 -->
<item android:id="@android:id/progress">
<clip>
<shape>
<!--圆角大小 -->
<corners android:radius="5dip" />
<solid android:color="#666666"/>
</shape>
</clip>
</item>
</layer-list>
在layout文件里面直接引入就行了
style="@android:style/Widget.ProgressBar.Horizontal"//设置进度条为长方形
android:progressDrawable="@drawable/pb_hao"//引入我们画好的进度条样式
2.在代码中重置进度条背景颜色,和进度颜色
在代码中我们首先找到ProgressBar的ID
然后再需要设置的时候进行设置
这里的设置我们需要用到
Drawable progressDrawable= getResources().getDrawable(R.drawable.pb_hao_no);
getResources()为我的资源,这个必须声明,要不就会找不到Drawable,这drawable为我们新的画好的进度条样式(新的颜色)
ProgressBar.setProgressDrawable(progressDrawable);
这样就完成了进度条的更新,主要是找Drawable时要声明在getResources