上次在做一个电池电量的进度显示时,需要根据背景主题色来切换电池电量的进度的颜色,
但是在对prgoressBar的setProgressDrawable进行设置之后发现,在4.0系统上能够正常,而在2.3系统上就完全没有颜色了;
原实现方法:
mBatteryPowerPercent.setProgressDrawable(this.getResources().getDrawable(R.drawable.progress_bar_layer));
问题原因:
没有setBounds
解决方案:
    mBatteryPowerPercent.setProgressDrawable(this.getResources().getDrawable(R.drawable.progress_bar_layer2));
    Rect bounds = mBatteryPowerPercent.getProgressDrawable().getBounds();
    mBatteryPowerPercent.getProgressDrawable().setBounds(bounds);
    mBatteryPowerPercent.setProgress(m_BatteryPercent + 1);  //在setBounds之后需要进行Progress变化才能生效,有时若不加也可能不会显示颜色出来
    mBatteryPowerPercent.setProgress(m_BatteryPercent - 1);   //变化太少也可能会……,先加后减而不是先减后加,我想大家都应该懂的吧