如何在Libgdx中快速解决暂停和恢复功能

时间:2011-05-12 15:33:38

标签: java resume libgdx

我需要在libgdx for Android中的pause()和resume()函数中编写哪些代码?

    @Override
    public void create() {
            // TODO Auto-generated method stub

    }

    @Override
    public void dispose() {
            // TODO Auto-generated method stub

    }

    @Override
    public void pause() {
            // TODO Auto-generated method stub

    }

    @Override
    public void render() {
            // TODO Auto-generated method stub

    }

    @Override
    public void resize(int width, int height) {
            // TODO Auto-generated method stub

    }

    @Override
    public void resume() {
            // TODO Auto-generated method stub

    }

}

2 个答案:

答案 0 :(得分:6)

基本上你不必在这两种方法中写任何东西。当您在create()中设置应用程序并在render()中绘制内容时,您的libgdx应用程序将起作用。当另一个活动进入前台并返回到您的libgdx应用程序时,这甚至可以工作。

当您的libgdx活动终止时,事情会发生变化,因为系统会回收内存。在这种情况下,您可以使用pause()来保存应用程序状态并在resume()中恢复它。 Libgdx还没有包装Android的Parcelable概念,所以你需要找到另一种持久性机制。

答案 1 :(得分:3)

暂停和恢复可能涉及所谓的上下文丢失的事件。当在Android上发生上下文丢失时,这意味着操作系统已决定强制释放已加载资源占用的内存。因此,在上下文丢失后直接访问您的资产会立即使恢复的游戏崩溃。要防止这些崩溃,您需要在重新访问资产之前重新加载它们。