适当的Android游戏线程

时间:2011-09-23 04:05:58

标签: android multithreading

我一直在看很多关于Android游戏开发的教程和博客,我对实现线程的最佳方法有疑问。

一些例子,比如Lunar Lander,有一个继承的SurfaceView类(LunarView),里面有另一个类(LunarThread),它似乎处理更新并绘制到SurfaceView。

我在网上找到的其他示例有一个非常基本的线程,它有一个run()循环,并调用在继承的SurfaceView类中编码的update和draw方法。 SurfaceView类中的update / draw方法还为其他类中的游戏中使用的对象调用update / draw方法。

每个似乎都有效,但我不确定哪种方法最好。出于某种原因,我也无法在课堂上上课。这是正常的吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

我认为这不是最好的做法。 LunarLander是作为示例项目创建的,以便了解如何使用SurfaceView。但是,如果你将调用线程保留在另一个类中,它仍然会很奇怪。由于该类只绑定到SurfaceView类。我已经使用LunaLander类型实现进行了开发,它给了我很好的结果。

我认为你在编译和运行级别中执行它的方式并不重要,只有在其他人理解你的代码的层面才有意义。