StartActivity и множественные экземпляры - PullRequest
1 голос
/ 08 января 2012

Я немного озадачен тем, как работают мероприятия. Если я нажимаю кнопку StartActivity(), затем нажимаю кнопку «Назад», чтобы вернуться к исходному действию, а затем снова нажимаю кнопку, чтобы выполнить то же самое действие StartActivity(), есть ли два экземпляра нового действия? ? Я знаю, что onCreate() вызывается каждый раз, так что первый экземпляр осиротел (предположительно, в конце концов, сборщик мусора)?

Должен ли я всегда следить за тем, чтобы вызывался finish() (через кнопку "Назад"), просто для безопасности? Я не уверен, что протокол здесь.

Ответы [ 2 ]

0 голосов
/ 08 января 2012

Как указано в документации,

public void onBackPressed () С: Уровень API 5

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

реализация по умолчанию при нажатии клавиши возврата вызовет finish() к текущей операции

0 голосов
/ 08 января 2012

С сайта разработки Android ( источник ):

Приложение обычно состоит из нескольких действий, которые слабо связаны друг с другом. Как правило, одно действие в приложении указывается как «основное» действие, которое представляется пользователю при первом запуске приложения. Затем каждое действие может начать другое действие для выполнения различных действий. Каждый раз, когда начинается новое действие, предыдущее действие останавливается, но система сохраняет действие в стеке («обратный стек»). Когда начинается новое действие, оно помещается в задний стек и фокусируется на пользователе. Задний стек соответствует базовому механизму очереди «последний пришел, первый вышел», поэтому, когда пользователь завершает текущее действие и нажимает клавишу BACK, он извлекается из стека (и уничтожается), и предыдущее действие возобновляется. (Задний стек обсуждается более подробно в документе «Задачи и задний стек».)

(отважно)

А на этой странице особенно интересно понять, как она работает в деталях:

Задачи и задний стек

...