原始问题: 我试图在画布上一个接一个地绘制矩形。我想在绘制每个对象之前暂停一秒钟。我该如何实现此功能?
编辑: 这是我到目前为止工作的代码。不确定这是否是最佳做法。如果你知道一个,建议一个更好的方法。
boolean stopAnimation = false;
int currentRectangle = 0;
Handler handler = new Handler(){
public void handleMessage(android.os.Message msg) {
invalidate();
System.out.println("redraw"+currentRectangle);
currentRectangle++;
if(currentRectangle>2){
stopAnimation = true;
}
};
};
public void onDraw(final Canvas canvas) {
final Rect currentRect = new Rect(a, 0, b, c);
canvas.drawRect(currentRect, paint); //wait a lil bit
canvas.drawRect(newRect, paint);
}
public void run() {
while (!stopAnimation) {
try {
Thread.sleep(200);
} catch (InterruptedException e) {
e.printStackTrace();
}
handler.sendEmptyMessage(0);
}
}
答案 0 :(得分:0)
我相信这会解决你的问题:
How to pause for 5 seconds before drawing the next thing on Android?
如果您需要具体信息,请回复,我很乐意为您提供帮助。