Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
TonyBicbaev
3 / 3 / 0
Регистрация: 04.11.2013
Сообщений: 132
#1

Стэки Активностей - Программирование Android

07.12.2016, 07:30. Просмотров 186. Ответов 10
Метки нет (Все метки)

Всем привет. Подскажите где ошибся.
Нужна небольшая помощь.Много читал про стэки но все ровно не чего не понял. И объяснить не кому.
В общем у меня есть 2 активности. Авторизации, и навигации.
Что нужно сделать:
1.Первый вход естественно открываем Авторизацию. Переходим в навигацию.
Java
1
2
3
4
 Intent intentNext = new Intent(this, NavigationActivity.class);
 intentNext.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP |
                            Intent.FLAG_ACTIVITY_SINGLE_TOP);
  startActivity(intentNext);
1.1 Здесь проблема такая, когда перешел на Навигацию, и свернул приложение, потом развернул, открывается окно Авторизации.
2. Авторизовавшись нам больше не нужно показывать активность авторизации.
2.1. В Навигации есть кнопка "Выход". При нажатие возвращаемся на Авторизацию.
Java
1
2
3
4
  Intent intent = new Intent(NavigationActivity.this, MainActivity.class);
  intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP |
                                        Intent.FLAG_ACTIVITY_SINGLE_TOP);
                                startActivity(intent);
Манифест

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Активность Авторизации.
   <activity
            android:name=".Activity.MainActivity"
            android:screenOrientation="portrait"
            android:launchMode="singleTask"
            android:windowSoftInputMode="adjustResize|adjustPan|stateAlwaysHidden">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
Активность навигации.
 <activity android:name=".Activity.NavigationActivity"
            android:launchMode="singleTask"
            android:screenOrientation="portrait"
             android:theme="@style/AppTheme.NoActionBar"
            />
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2016, 07:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Стэки Активностей (Программирование Android):

Наслоение активностей - Программирование Android
Всё ниже: private GridView.OnItemClickListener gridviewOnItemClickListener = new GridView.OnItemClickListener() { @Override ...

Несколько Активностей и кнопки - Программирование Android
Не переключается на другую активность по нажатию кнопки, хотя в манифесте прописано. Подскажите что исправить в коде. import...

Жизненный цикл активностей - Программирование Android
Здравствуйте, уважаемые форумчане. Столкнулся с небольшой проблемой, думаю вы сможете мне помочь. В моем приложении 1 activity и много...

ActionBar переход активностей - Программирование Android
как сделать что бы при выборе элемента tab переходило на другую активность android.support.v7.app.ActionBar.Tab tab =...

Один поток - несколько активностей - Программирование Android
Пытаюсь разобраться с блютузом. За основу взял пример BluetoothChat. Выполняю соединение с устройством блютуз в одном активити...

Один ActionBar дл всех активностей - Программирование Android
Всем привет! Есть ActionBar который должен выглядеть одинаково для всех активностей.Но при этом приходится прописывать реализацию методов...

10
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,669
07.12.2016, 10:19 #2
TonyBicbaev, в OnCreate авторизации проверьте что вы авторизованы и если да завершите активити авторизации запустив активити навигации
0
fraley
106 / 106 / 40
Регистрация: 24.05.2015
Сообщений: 322
07.12.2016, 10:44 #3
Если честно я всегда путаюсь в этих флагах для интентов(приходится идти в гугл)), я бы лучше добавил метод finish() после вызова startActivity, чтоб MainActivity не попадало в стек.
Насколько я понял, это то что хочет ТС.
0
TonyBicbaev
3 / 3 / 0
Регистрация: 04.11.2013
Сообщений: 132
07.12.2016, 11:19  [ТС] #4
vxg, в общем я еще больше углубился в суть вопроса.
помогли вот эти два флага
Java
1
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
fraley, да finish() тоже вызывал бесполезно было)
0
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
07.12.2016, 12:09 #5
по идее было достаточно в MainActivity в манифесте добавить
XML
1
android:noHistory="true"
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
07.12.2016, 12:29 #6
Я бы ограничился одной активити, а авторизацию сделал бы в виде диалога.
0
TonyBicbaev
3 / 3 / 0
Регистрация: 04.11.2013
Сообщений: 132
07.12.2016, 12:40  [ТС] #7
Паблито, это вместо флагов?) и в каждой активности прописать?)
0
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
07.12.2016, 12:46 #8
это вместо флагов
в той активности, которая не должна остаться в стеке
и на нее не получится вернуться по press back button
0
vxg
07.12.2016, 12:57
  #9

Не по теме:

Паблито, достаточно было бы оторвать руки разработчикам концепции поведения активностей

0
Pablito
07.12.2016, 12:58
  #10

Не по теме:

активити еще терпимо, а вот за фрагменты я бы пнул того, кто их придумал

0
TonyBicbaev
3 / 3 / 0
Регистрация: 04.11.2013
Сообщений: 132
07.12.2016, 13:08  [ТС] #11
Паблито, да хорошее решение спасибо.
Полностью с вами согласен, сложно со всем этим разобраться)
Цитата Сообщение от vxg Посмотреть сообщение
Не по теме:
Паблито, достаточно было бы оторвать руки разработчикам концепции поведения активностей
0
07.12.2016, 13:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2016, 13:08
Привет! Вот еще темы с ответами:

База данных и несколько активностей - Программирование Android
У приложения есть БД, данные из которой нужно доставать и каким-то образом с ними взаимодействовать в нескольких активностях. Как я понял,...

Анимации открытия и закрытия активностей - Программирование Android
Для анимации перехода между активностями использовал метод overridePendingTransition(R.anim.dt,R.anim.alpha). Анимация открытия...

Сколько активностей может быть - Программирование Android
Ребята я писал приложения, но использовал по минимуму активностей, тупо было ненужно. Мне стало интересно сколько может быть &quot;максимально&quot;,...

Общая музыка для нескольких активностей - Программирование Android
Приветствую, подскажите, можно ли сделать общий MediaPlayer для нескольких активностей? Хочу, чтобы музыка играла без остановки на всех...


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

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

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