Вернуться к "предыдущему предыдущему" занятию - finish() или startActivity?
У меня есть эта папка структура деятельности, где один переходит к следующему startActivity(..)
HomeActivity -> папка 1 (GridView) -> подпапка 1 (ListView) -> элемент (WebView)
И нет подпапки.
На каждом из заданий есть кнопка BACK и кнопка HOME. Допустим, я попал в "Подпапку 1" через "Домой" и "Папка 1".
Теперь я хочу, чтобы кнопка HOME в "Подпапке 1" (а также "элемент") вернула приложение в HomeActivity. Я знаю, что это "возможно" с помощью startActivity(getApplicationContext(),HomeActivity.java);
Но я обычно думал, что это нехорошо, потому что это делает новый Activity, оставляя предыдущий неиспользованным, тратя пространство стека (?), И это не то, что я действительно хочу делать. Более того, если бы в HomeActivity редактировались поля ввода, они были бы сброшены, если бы я только начал новую HomeActivity.
Таким образом, мой вопрос заключается в том, есть ли лучший способ вернуться НАЗАД к деятельности бабушки и дедушки непосредственно от деятельности внука (вместо того, чтобы называть бабушку и дедушку ребенком внучки) (звучит уже неправильно)
PS я пробовал с finish()
, с этим я мог бы пойти из папки 1 обратно домой. А также finish()
Папка 1 перед вызовом подпапки вернет меня домой, когда я finish()
Подпапка тоже, но кнопка "назад" в подпапке не будет работать, так что это не работает для меня. И я использую Eclipse для написания кода, если это имеет значение.