有很多关于如何保存游戏状态的文章,而且它们非常好。但是我有一个概念上的误解,我应该在哪里保存国家?

我的libgdx游戏有大量屏幕,其中一对 大型螺丝金烯屏幕 这些是从 屏幕 班级。 大型螺丝 在游戏开始时显示 金烯屏幕 等一下下。

问题是什么?我导航到 金烯屏幕, ,强迫Android停止应用程序(我更改设备上的语言设置以实现此目标)。之后,我再次选择应用程序,我可以看到 大型螺丝 显示。但我想要 金烯屏幕 要显示。

我想我应该覆盖 resume 方法。但是哪一个呢?我有课 psgame 延伸 游戏 libgdx类。我把断点放在它的 resume 方法,事实证明未调用方法。我调查了这个问题,我在 onResume 的方法 AndroidApplication libgdx中的课:

    if (!firstResume)
        graphics.resume();
    else
        firstResume = false;

我的调试器说 firstresume 是真的,没有去 graphics.resume() 线。

  1. 我做错了什么?
  2. 我应该覆盖哪些方法?
有帮助吗?

解决方案

我认为您已经正确地缩小了这个范围,您应该在恢复保存的状态 resume 方法致电您 Game 子类。如果您切换到其他应用程序,则应调用这一点,然后切换回您的应用程序(而无需浏览将终止应用程序的步骤)。无论出于何种原因,libgdx都不会转发 resume 呼吁初始启动(从长远来看,这种设计可能是一个好主意,但启动时有点混乱)。它很容易从中调用您的还原代码 create 您的方法 Game (仅在应用程序启动时调用),以获取游戏的第一个开始,以实现“简历”行为。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top