我正在尝试确定如何构建我正在编写的简单安卓游戏的代码。我专注于UI部分。幕后部分(如暂停/重启/切换/等)与我无关。 Android演示游戏源代码已经做得很好。
基本上我的游戏需要一个UI,屏幕上有一系列对象(大约100或10x10),用户可以与之交互。我需要为每个对象提供一个图像,并为每个对象实现触摸事件和动画事件。我想知道的是,我为每个对象使用什么类型的类,以便我可以成功实现这些方法,以及如何实现该特定类。请注意,此游戏仅在用户与这些对象之一进行交互时执行,这意味着我不需要“实时”实现。
我的研究似乎指向每个屏幕对象需要成为视图对象的方向,并且我需要将每个视图对象添加到视图组容器中。然后我需要决定视图组的布局,但我真的不确定。这是一种可行的方法还是有更好的选择?
我想我正在寻找的设计方法比什么都重要。谢谢你的建议。
答案 0 :(得分:2)
阅读使用SurfaceView,它提供了一个Canvas,您可以轻松地在其上绘制对象(给对象一个draw()方法,将Canvas作为参数,以便他们可以自己绘制在它上面)/ Bitmaps /形状。查看JetBoy游戏的示例代码,该代码可以帮助您入门。
答案 1 :(得分:0)
每个图像/对象可能都是ImageView的扩展类。或者只是一个ImageView,如果它足够简单。
在您的活动代码上,您可以将onTouchListeners附加到这些imageview,以确定使用何时触及它们。
您需要使用SurfaceView作为容器。然后,您可以将对象图像视图添加到曲面视图,并且应该设置一个良好的起点。