Я слышал, что нажатие кнопки "назад" по существу приведет к тому, что текущая активность будет finish()
. Это всегда так? Похоже, это было бы с тем, как он выдает Activity из стека.
Единственная ситуация, о которой я не очень уверен, - это то, когда корневая активность в задаче снова нажата. В настоящее время я испытываю очень странный эффект, описанный ниже:
При загрузке моего приложения первая операция предназначена для инициализации, и как только она заканчивается, она вызывает мою основную активность (TabActivity). В этом первом действии init есть андроид: noHistory = "true", установленный в манифесте, поэтому нажатие Назад из моей основной активности не вернется к этому. Он идет в Launcher. Когда я снова нажимаю на свое приложение в Launcher, операция инициализации снова загружается и загружает основное действие, когда это делается. Почти сразу после этого он загружает второй экземпляр моей основной деятельности. Но ТОЛЬКО после того, как приложение уже было запущено один раз, и было завершено нажатием BACK из основного Activity. Он делает это каждый последующий раз, пока я не выхожу из приложения или не загружаю новую версию из среды IDE.
Исходя из этого, я подозреваю, что какой-то экземпляр Activity находится вокруг и повторно используется, поскольку это происходит только во втором + времени, когда я запускаю приложение (и выйдите с BACK - с помощью HOME просто вернется в последнее состояние приложение, не имеет большого значения). У кого-нибудь есть мысли?