我在自定义视图(SurfaceView)中将ProgressBar绘制到它的Canvas中,并按预期绘制。不管它不是动画,不管我做什么。 我的自定义视图已正确设置动画,但我无法更改ProgressBar的进度。
我已经创建了这样的ProgressBar:
mImageProgressbar = new ProgressBar(context);
mImageProgressbar.setIndeterminate(true);
int pad = 50;
mImageProgressbar.setPadding(pad, pad, pad, pad);
mImageProgressbar.layout(0, 0, 200, 200);
mImageProgressbar.setEnabled(true);
我画的是这样的(略微简化):
Canvas c = mSurfaceHolder.lockCanvas(null);
mImageProgressbar.draw(c);
我也尝试手动更新它的进度:
mImageProgressbar.setProgress( (int)(System.currentTimeMillis()%1000) );
对于我的ProgressBar动画或改变它的进展需要做些什么的任何想法都将不胜感激。
答案 0 :(得分:1)
您是否尝试使progressBar视图无效?
mImageProgressbar.invalidate();
答案 1 :(得分:1)
您必须使用线程实时更新进度条