Поток игровой активности для Android - Назад к началу - PullRequest
1 голос
/ 12 мая 2011

Я ищу лучший способ настройки навигации в игре для Android; Лучшая практика для Android Game Activity Navigation. У меня есть следующий сценарий:

  • Активность в главном меню (приветствует пользователя при запуске и дает ему варианты)
  • A RunLever Activity (запускает уровень игры)
  • Активность в переходном меню (отображается между уровнями, показывает оценки и тому подобное, предоставляя кнопку для перехода на следующий уровень)

Поэтому, если игрок начинает игру и завершает два уровня, у него может быть стек активности, который выглядит примерно так:

Diagram of possible program flow.

Проблема, с которой я столкнулся, связана с ожиданиями при нажатии кнопки «Назад»:

  • Если бы я был в последнем меню «Между» и нажал назад, я бы ожидал вернуться в главное меню. Вместо этого это, вероятно, вернет меня к уровню, который я только что выиграл.
  • Я бы не ожидал, что последние уровни, в которые я играл, и предыдущие действия в меню «Между» останутся там в Back Stack. Я бы только ожидал, что главное меню, текущий уровень, на котором я играю, и один экземпляр меню между ними будут находиться в заднем стеке в любое время.

Насколько я могу судить, все остальное будет работать правильно и так, как ожидает пользователь. Я думаю, я просто хочу знать, какие самые лучшие варианты решения этой проблемы. Чтобы убедиться, что действия в этой игре происходят, как ожидалось. Должны ли они даже быть отдельными видами деятельности? Спасибо.

1 Ответ

3 голосов
/ 12 мая 2011

Вместо того, чтобы нажимать на новую активность между меню после завершения уровня, можете ли вы вместо этого вытолкнуть стек активности и обнаружить, что (например) первый уровень завершен, когда уже существующее промежуточное действие снова становится активным?

Таким образом, первый «назад» всегда возвращался к промежуточному, второй «назад» возвращался в главное меню, а третий «назад» уходил из игры. Все это, вероятно, то, что ожидает пользователь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...