Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Hank
64 / 55 / 5
Регистрация: 28.12.2011
Сообщений: 305
1

Как уничтожить все активити в стеке?

19.06.2015, 12:21. Просмотров 947. Ответов 6
Метки нет (Все метки)

Всем привет!
Подскажите, как решить следующую задачу:

Активити 1 -> Активити 2 -> Активити 3 -> нажимаю back приложение должно закрыться.

Пробовал играться флагами CLEAR_TOP и NEW_TASK, но приложение все равно переходит на предыдущий экран. В Активити 2 я вышел из ситуации вызовом finish() при запуске Активити 3. Но как убить Активити 1, не пойму.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2015, 12:21
Ответы с готовыми решениями:

Как вызвать метод в активити классе из обычного не активити класса?
Есть активити в котором вводятся логин и пароль. При нажатии кнопки "войти" в...

На телефоне highscreen 3 на всех активити происходит быстрый самовозврат к главной активити
Сделал меню в виде ListView. При клике на меню запускаются активити. На...

Перебрать все элементы активити
Как перебрать/получить все элементы активити? Циклом? Или получить таблицу...

Изменение параметров активити из другого активити
Как сделать так чтобы из первого активити поменять final ImageView...

Отображение активити поверх другого активити
Ребят подскажите пожалуйста как такое сделать. Есть активити с картой, по...

6
Valakin
432 / 98 / 15
Регистрация: 21.02.2015
Сообщений: 741
19.06.2015, 12:27 2
а цель какая? удаление противоречит принципам которым следует андроид
если мешает сотрите все с лейаута когда уйдете с активити
0
Mikalai
264 / 240 / 95
Регистрация: 11.01.2015
Сообщений: 671
19.06.2015, 12:34 3
так в чём проблема? каждый раз при переходе на другое активити вызывай finish() иначе они ложатся в бекстек
0
Hank
64 / 55 / 5
Регистрация: 28.12.2011
Сообщений: 305
19.06.2015, 12:48  [ТС] 4
так в чём проблема? каждый раз при переходе на другое активити вызывай finish() иначе они ложатся в бекстек
Проблема в том, что переходя с Активити 1 в Активити 2 первое активити убивать нельзя, т.к. в нее я могу еще вернуться кнопкой назад, а вот если перешел в Активити 3, то тогда ни в первое ни во второе активити я возвращаться не должен.
0
Mikalai
264 / 240 / 95
Регистрация: 11.01.2015
Сообщений: 671
19.06.2015, 13:11 5
Самый брутальный способ - System.exit(0); ))
0
Hank
64 / 55 / 5
Регистрация: 28.12.2011
Сообщений: 305
19.06.2015, 16:45  [ТС] 6
В общем сделал по другому.
Активити 2 запускаю методом startActivityForResult. Когда мне нужно открыть Активити 3, я Активити 2 закрываю кодом
Java
1
2
3
4
Intent intent = new Intent();
intent.putExtra("FORM_CLOSE", true);
setResult(RESULT_OK, intent);
finish();
В методе onActivityResult() отлавливаю флаг, говорящий, что эту Активити 1 нужно закрыть и открыть Активити 3.
После всех манипуляций в стеке остается только Активити 3.
0
Vladimirys
312 / 209 / 27
Регистрация: 16.01.2010
Сообщений: 610
19.06.2015, 17:40 7
Вот такой вариант. В принципе, работаете не только для двух активностей.
http://www.cyberforum.ru/post6872659.html
0
19.06.2015, 17:40
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.06.2015, 17:40

Вызов новой активити не из класса активити
Есть 4 класса: 1) WelcomeActivity; 2) MainActivity; 3) PopUpActivity; 4)...

Как из Активити запустить сервис ?
Друзья как из Активити запустить сервис я знаю, но проблема в том что после...

Как добавить Графику в активити?
Здравствуйте. Хочу узнать как вывести графику на дисплей вместе со стандартными...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru