设置ProgressBar滑动的颜色,其函数为:progressBar.setProgressDrawable(Drawable d);
但是,设置一个普通的Drawable是没有用的,ProgressBar会把该图片平铺。
正确的方式是:设置一个ClipDrawable,ClipDrawable 是对一个Drawable进行剪切操作,可以控制这个drawable的剪切区域,以及相相对于容器的对齐方式,android中的进度条就是使用一个ClipDrawable实现效果的,它根据level的属性值,决定剪切区域的大小。
代码如下:
ClipDrawable d = new ClipDrawable(new ColorDrawable(Color.YELLOW), Gravity.LEFT, ClipDrawable.HORIZONTAL);
progressBar.setProgressDrawable(d);