CircleProgressView初始化的时候,设置isGraduated=true,无法改变样式
paihuai00 opened this issue · comments
需求:想要使用作者中间镂空的圆环样式;
下载demo,看到作者是在Swicth中通过
//------代码-------
case R.id.csc_isGraduated:
if (isChecked){
//在这里改变样式
circleProgressView.setGraduatedEnabled(true);
}else {
circleProgressView.setGraduatedEnabled(false);
}
break;
但是我把 circleProgressView.setGraduatedEnabled(true); 添加到初始化的时候,样式无法改变
@paihuai00 你好,的确存在问题,感谢你的使用😄,我将会在本周日之前更新一下library。如果你想要在此之前使用,可以暂时在初始化中采取如下方法:
circleProgressView.post(new Runnable() {
@Override
public void run() {
circleProgressView.setGraduatedEnabled(true);
}
});
如果解决了,还望告知原因 。辛苦作者了!
@paihuai00 已经解决,请看二楼,问题原因是调用setGraduatedEnabled 方法时,view可能还没有layout完毕,通过View#post方法使其添加到队列尾部,保证了在layout结束以后才执行。