" Game"," Screen"有什么区别?和#34; ApplicationAdapter"在libgdx?

时间:2015-07-04 15:54:41

标签: java libgdx game-engine

在教程中,人们有时会使用"扩展游戏"有时"实现Screen"我已经自动生成"扩展了ApplicationAdapter"。他们之间有什么区别?

1 个答案:

答案 0 :(得分:16)

ApplicationAdapter允许您创建一个侦听器,但不会强制实现每个方法。如果您熟悉Swing,请查看KeyAdapter,它的想法是一样的。

ApplicationListener允许您处理应用程序事件。这允许您在应用程序生命周期内的某些事件(例如destroy)中执行代码。

  

在创建,恢复,渲染,暂停或销毁应用程序时调用ApplicationListener。在具有OpenGL上下文当前的线程中调用所有方法。因此,您可以安全地创建和操作图形资源。

Game是支持多个屏幕的ApplicationListener。您可以使用setScreen创建多个屏幕并在em之间切换。

  

委派给Screen的ApplicationListener。这允许应用程序轻松拥有多个屏幕。

Screen正如它听起来的那样;它是在给定时间显示的内容。也许它是一个主菜单,也许它是真正的游戏。

  

表示许多应用程序屏幕中的一个,例如主菜单,设置菜单,游戏屏幕等。

建议您使用Game类作为游戏的基础,然后创建多个Screen个实例来表示您将拥有的不同游戏状态。