我正在自定义视图(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动画或更改进度,我需要做些什么的想法。

最佳答案

您是否尝试使progressBar视图无效?

mImageProgressbar.invalidate();

08-04 06:23