В каких методах методов следует сохранено/загружено состояние игры

StackOverflow https://stackoverflow.com/questions/9301315

  •  25-10-2019
  •  | 
  •  

Вопрос

Есть много статей о том, как спасти состояние игры, и они довольно хороши. Но у меня есть одно концептуальное недопонимание, где я должен спасти государство?

В моей игре Libgdx есть количество экранов, и их пара Mainmenuscreen а также Mainscenescreen Они унаследованы от Экран учебный класс. Mainmenuscreen показан в начале игры Mainscenescreen немного позже.

В чем проблема? Я перемещался Mainscenescreen, вынужден Android остановить приложение (я меняю настройки языка на устройстве для достижения этого). После этого я снова выберу приложение и вижу Mainmenuscreen Показано. Но я хочу Mainscenescreen быть показанным.

Я полагаю, я должен отменить 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