0

当前的问题是,由于每次调用 onDraw() 时我都必须为视图绘制背景,因此我在简单的 android 游戏中遇到了帧率问题。我目前每次调用 invalidate() 时都必须绘制大约 800 个位图,每个位图都是地图的一个元素。我正在使用 for 循环来绘制每个位图。

我想知道是否有一种更有效的方法来绘制位图,这样背景只能绘制一次并且玩家精灵会被更新。

我目前尝试只绘制一次背景,但画布只会覆盖背景,留下空白画布和角色精灵的视图。

提前感谢您的任何建议。

4

1 回答 1

0

您可以使用 View.invalidate 方法和脏矩形作为输入

public void invalidate (Rect dirty)

有关更多信息,请参阅 API 参考http://developer.android.com/reference/android/view/View.html#invalidate(android.graphics.Rect)

于 2013-06-05T11:43:08.210 回答