Нажмите кнопку «Назад» и затем возобновите активность - PullRequest
1 голос
/ 17 января 2011

Я занимаюсь разработкой игры для Android, и у меня, как мне кажется, очень распространенный сценарий, но я не могу понять, как это сделать.

У меня есть титульный экран, где пользователь может выбрать"Новая игра".Когда они запускают игру, я помещаю GameActivity в стек.Затем, если пользователь нажимает физическую кнопку возврата на телефоне, приложение возвращается к TitleActivity, как я намереваюсь.Тем не менее, мне нужен способ, позволяющий пользователю возобновить игру на этом этапе, но я не знаю, как вернуться к экземпляру GameActivity.Любая помощь приветствуется.

Ответы [ 2 ]

4 голосов
/ 17 января 2011

Вы не можете гарантировать, что вернетесь к этому экземпляру GameActivity, вам нужно каким-то образом сохранить игровое состояние и сделать так, чтобы GameActivity мог вернуться из этого сохраненного состояния.

Убедитесь, что вы понимаете жизненный цикл Activity . Экземпляр вашей активности можно уничтожить в любое время, когда он не виден, поэтому вам нужно сохранить состояние в нужной точке ( onSaveInstanceState ).

1 голос
/ 18 января 2011

Я бы ответил: не делай этого.

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

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

...