Libgdx Developer's Guide(Libgdx开发者手册)-5(生命周期)
2013-07-17 09:54
477 查看
Libgdx拥有一个设计非常好的生命周期以管理应用程序状态,比如创建,暂停和恢复,渲染和销毁应用程序。
Application Framework)。 从那里,应用程序会在每次应用层事件发生时调用这个ApplicationListener 。一个
ApplicationListener 的实现如下示例:
[/code]
如果不是所有的接口方法都适宜,也可以使用ApplicationAdapter 类。
一旦传入应用程序,ApplicationListener方法会按照下面所示被调用:
下面以图表示例该生命周期:
![](http://libgdx.googlecode.com/svn/wiki/img/application_lifecycle_diagram.png)
ApplicationListener
应用开发者通过实现 ApplicationListener 接口并传入一个实现了应用的实例来挂接到生命周期事件,该应用实现了一个指定的后台 (seeTheApplication Framework)。 从那里,应用程序会在每次应用层事件发生时调用这个ApplicationListener 。一个
ApplicationListener 的实现如下示例:
public class MyGame implements ApplicationListener { public void create () { } public void render () { } public void resize (int width, int height) { } public void pause () { } public void resume () { } public void dispose () { } }
[/code]
如果不是所有的接口方法都适宜,也可以使用ApplicationAdapter 类。
一旦传入应用程序,ApplicationListener方法会按照下面所示被调用:
Method signature | Description |
create () | 该方法只在应用创建时调用一次。 |
resize(int width, int height) | 该方法在每次游戏屏幕大小重新调整并且游戏不是暂停状态的情况下调用。它会在create()方法后调用一次。参数是被重新调整大小后新的屏幕宽高,单位是像素。 |
render () | 应用程序每次渲染时都循环调用。游戏逻辑的更新通常在该方法内执行。 |
pause () | Android中,该方法在Home按钮被按下或者接收了一个来电时调用。 桌面应用中,该方法仅在退出应用时在dispose()方法前执行。 这是一个保存游戏状态的好地方。 |
resume () | 该方法只在Android中,当应用程序从暂停状态恢复时调用。 |
dispose () | 当应用销毁时调用。在此方法前会执行一次 pause(). |
![](http://libgdx.googlecode.com/svn/wiki/img/application_lifecycle_diagram.png)
主循环在哪?
Libgdx 是事件驱动性质的,这主要是源于Android与Javascript的工作方式。它并不存在一个明确的主循环,然而,ApplicationListener.render() 方法可以认为是该主循环的主体。相关文章推荐
- Libgdx Developer's Guide(Libgdx开发者手册)-3(运行示例与测试)
- Libgdx Developer's Guide(Libgdx开发者手册)-9(一个简单的游戏2--扩展示例游戏)
- Libgdx Developer's Guide(Libgdx开发者手册)-7(查找,日志,线程,特定平台代码的接口)
- Libgdx Developer's Guide(Libgdx开发者手册)-2(项目创建、运行和调试)
- Libgdx Developer's Guide(Libgdx开发者手册)-6(启动类与配置)
- Libgdx Developer's Guide(Libgdx开发者手册)-8(一个简单的游戏)
- Libgdx Developer's Guide(Libgdx开发者手册)-4(应用框架)
- Libgdx Developer's Guide(Libgdx开发者手册)-1
- Linux Kernel - A Developer's Guide (如何成为一个Linux内核开发者)
- Apache-Chemistry(OpenCMIS Client API Developer's Guide)
- The Developer's Guide
- Chapter10 Firmware 《ARM system developer's guide》
- MPU(Memory Protection Units) 《ARM System Developer's Guide》Chapter-13
- MAPI,SAPI,and TAPI Developer's Guide(NO.1)
- Funambol Developer's Guide 中 connector development例子的问题
- 《OpenOffice.org Developer's Guide》笔记之First Step
- Flex中的嵌入资源(Embedding Assets)——Swingguy摘译自Flex 3 Developer's Guide,转载请注明
- AM335x PSP User's Guide 中文手册
- 【原创】ARM System Developer's Guide 读书笔记-前言
- AM335x U-Boot User's Guide 中文手册