【发布时间】:2021-09-22 19:17:30
【问题描述】:
我正在尝试使用“处理程序”来重复一个函数(真的想学习如何使用它),但该函数只执行一次。
public Runnable runnableCode = new Runnable() {
@Override
public void run() {
if (changeColor) {
myPaint.setColor(Color.BLUE);
Rect r = new Rect(0, 0, widthInPixels * 90, heightInPixels * 90);
myCanvas.drawRect(r, myPaint);
changeColor = false;
} else {
myPaint.setColor(Color.RED);
Rect r = new Rect(0, 0, widthInPixels * 90, heightInPixels * 90);
myCanvas.drawRect(r, myPaint);
changeColor = true;
}
handler.postDelayed(runnableCode, 1000);
}
};
public void play (View view) {
handler.post(runnableCode);
}
【问题讨论】: