为 Android 创建动态游戏引擎的自然方法

Natural approach to create a dynamic game engine for Android

我想为 Android 创建一个简单的游戏引擎。我是 OS 的新手,我想确保我没有走错方向。

我的要求很简单:

我的第一个问题是:我应该用一个还是多个 Activity 对象来创建场景?那就是: 是不是最好有一个 activity ,点击按钮时内容会动态更新?或者每个场景有一个 activity。

请注意,困难在于游戏引擎必须动态生成活动。所以按钮列表不能硬编码在布局文件中,因为它们来自描述文件。我发现 this example 展示了如何动态创建布局。您会推荐使用相同的方法吗?

假设我对所有场景使用单个 activity,这意味着当我切换场景(通过单击按钮)时,我需要完全更新视图(背景和按钮)。为此,我是应该用 removeView() 一个一个地删除每个元素,还是用 setContentView() 创建一个新的空白布局,然后用新的背景和按钮填充它?

欢迎任何建议。

场景示例:

活动通常用于不同的"views"。例如: 聊天应用程序将有一个大厅 activity,并在打开聊天屏幕时启动一个新的 activity。

按照上面的类比,我会说你应该只使用一个 activity 并在那个 activity 中加载正确的场景。可能有一个 activity 控制这些变化?或者 activity 在加载时显示布局。

话虽如此。我认为您必须设计可以转换为 buttons/walls/monsters 等的自定义对象。这将使 buttons/objects 的动态加载更容易。在 Android 中,您必须在布局 xml 文件中定义 buttons/visual 个对象。此文件将由 activity 加载。我不认为这些 xml 文件可以即时修改。