Я разрабатываю приложение для Android и не понимаю кнопку «Назад».Кнопка «Назад» занимает 3 попытки
Существует активность (скажем, A1), с которой нажатием кнопки пользователь переходит к другому действию (скажем, A2). Как только пользователь закончил работу с A2, он нажимает кнопку «Назад», чтобы вернуться к предыдущему действию A1. Все документы говорят, что A1 будет onResume() в этот момент.
И это действительно так. Однако, если я нахожусь в A2 и меняю ориентацию экрана (от пейзажа к портрету или наоборот), то происходит что-то совсем другое. А2-активность снова появляется, в зависимости от ориентации экрана. Когда я нажимаю BACK сейчас, активность A2 снова появляется (без изменения ориентации экрана). При повторном нажатии BACK снова активируется операция A2. ТРЕТЬЕ нажатие на назад возвращает вас к Activity A1.
Что я делаю неправильно здесь, чего мне не хватает? Thanks
Peter
так вы говорите, что стек приостановленных действий выглядит так? (Arggh, не может помещать новые строки в комментарии) TOP of stack - Activity A2 in landscape - Activity A2 в портретном END. Это кажется очень противоречивым. –
Ваш задний стек не будет знать, является ли ваша деятельность портретной или альбомной.Итак, это похоже на TOP of stack -> Activity A2 -> Еще одно действие A2 -> END стека. – Enigma
Это казалось противоречивым, потому что предложение, внесенное Enigma, было неправильным. Это была не вина Энигмы - я не представил достаточной информации в том, как я сформулировал вопрос. Но факт остается фактом: изменение конфигурации приводит к уничтожению старой активности, которая не сохраняется в стеке. –