Java 画布:触摸屏刷新

Java 画布:触摸屏刷新,java,android,android-canvas,Java,Android,Android Canvas,我在试着做战舰之类的东西。 到现在为止,我已经成功地随机繁殖并在画布上绘制它们。 但还有另一个问题:在游戏中,用户将触摸电池,电池将被涂成黄色(如果击中)或画一个点(如果未击中) 在我看来,画布上显示的所有内容都必须在onDraw()方法中写入 问题是:当用户触摸屏幕时,如何使用新数据刷新屏幕 现在屏幕如下所示: 这一次,船舶在调试时可见调用invalidate()刷新绘图。它会删除以前的绘图吗?调用invalidate将调用ondraw(),它不会删除,直到您在ondraw中有擦除代码,如果

我在试着做战舰之类的东西。 到现在为止,我已经成功地随机繁殖并在画布上绘制它们。 但还有另一个问题:在游戏中,用户将触摸电池,电池将被涂成黄色(如果击中)或画一个点(如果未击中)

在我看来,画布上显示的所有内容都必须在onDraw()方法中写入

问题是:当用户触摸屏幕时,如何使用新数据刷新屏幕

现在屏幕如下所示:


这一次,船舶在调试时可见

调用invalidate()刷新绘图。它会删除以前的绘图吗?调用invalidate将调用ondraw(),它不会删除,直到您在ondraw中有擦除代码,如果我想在不同的时间执行不同的操作?在onDraw()中使用if子句?可以在onDraw()中使用if-else。调用invalidate只会刷新绘图