标签:android 代码 进度 背景 progressbar 颜色
做个笔记,主要是需要使用ClipDrawable、LayerDrawable:
private void setProgressBg(int progress) {
int a = progress * 255 / 100;
int color = Color.argb(a, 255, 90, 147);
ColorDrawable colorDrawable = new ColorDrawable();
colorDrawable.setColor(color);
ClipDrawable clipDrawable = new ClipDrawable(colorDrawable, Gravity.LEFT, ClipDrawable.HORIZONTAL);
Drawable drawable = getResources().getDrawable(R.color.transparent);
Drawable[] layers = new Drawable[]{drawable,clipDrawable};
LayerDrawable layerDrawable = new LayerDrawable(layers);
layerDrawable.setDrawableByLayerId(0,drawable);
layerDrawable.setDrawableByLayerId(1,clipDrawable);
progressBar.setProgressDrawable(clipDrawable);
progressBar.setProgress(0);
progressBar.setProgress(progress);
Loger.d("Vote投票", "result = " + progress);
Loger.d("Vote投票", "a = " + a);
}本文出自 “天空没有痕迹但我飞过” 博客,请务必保留此出处http://glblong.blog.51cto.com/3058613/1739160
Android笔记:根据进度代码改变progressbar背景颜色,ClipDrawable,LayerDrawable,setProgressDrawable
标签:android 代码 进度 背景 progressbar 颜色
原文地址:http://glblong.blog.51cto.com/3058613/1739160