Кнопка Назад работает не так, как ожидалось с TabGroupActivity и ViewSwitcher
У меня есть некоторые странные эффекты в моем приложении для Android.
Я использую TabHoster с TabGroupActivities для каждой вкладки. Работает довольно хорошо, за исключением поведения кнопки "Назад".
Активность запускается и отвечает на кнопку Назад. Затем я запускаю дочернюю активность с помощью ViewSwitcher. Когда я нажимаю кнопку "Назад" в представлении, действие прекращается, как ожидалось. Но это проходит через onBackPressed()
моей деятельности.
Когда я нажимаю кнопку "Назад" в представлении B (detailView==true), метод даже не вызывается. Вместо этого onBackPressed()
из TabGroupActivity вызывается, и я не могу переключиться обратно на первый просмотр.
@Override
public void onBackPressed() {
if (detailView == true){
vf.showPrevious();
detailView = false;
}
else {
super.onBackPressed();
}
return;
}
Кто-нибудь может объяснить это и / или сказать мне, как переключаться между представлениями в Activity в ActivityGroup?
1 ответ
Несколько дней спустя я пришел к выводу, что для моего случая это самое простое решение - выбросить вещи ViewSwitching и перенести их в отдельные действия.
Себастьян Олссон, безусловно, прав с фрагментами, но для моего конкретного приложения было бы больше усилий перестроить все в фрагменты.