Можно ли сразу запустить несколько действий? Я имею в виду, от основного создания 3 действия в некотором порядке и только последнее будет видно? До сих пор мне удалось создать только одно действие.
Спасибо
Можно ли сразу запустить несколько действий? Я имею в виду, от основного создания 3 действия в некотором порядке и только последнее будет видно? До сих пор мне удалось создать только одно действие.
Спасибо
Вам может понадобиться что-то вроде этого, чтобы зайти в приложение после того, как пользователь нажал на уведомление, чтобы отобразить недавно добавленный контент.
Intent i = new Intent(this, A.class);
i.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(i);
Intent j = new Intent(this, B.class);
j.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(j);
Intent k = new Intent(this, C.class);
startActivity(k);
Таким образом, вы можете одновременно запускать действия A, B и C и подавлять переход к действиям A и B. Вы получаете один переход от текущей деятельности к активности C. Я настоятельно рекомендую вам зарегистрировать жизненный цикл Activity вызовы методов (onCreate и т.д.) в LogCat, например. Это помогает в понимании порядка событий.
Действительно старый вопрос, но я думал, что все еще отвечаю на него.
Использование: public void startActivities (Intent [] intents, Bundle options)
Попробуйте startActivity(new Intent(...);
в конце вашего onCreate
-метода первого действия.
Это немедленно запустит новую активность и приостанавливает первый.
С помощью клавиши "Назад" вы вернетесь к последнему мероприятию
Это может быть обычным делом в ответ на глубокую привязку или другие варианты использования, когда вам, в основном, нужно синтетически перестроить задачу (и все действия, которые она должна содержать). Иногда просто указывать parents
в манифесте недостаточно.
Взгляните на TaskStackBuilder. Один общий пример:
TaskStackBuilder.create( this )
.addNextIntent( intentOnBottom )
// use this method if you want "intentOnTop" to have it parent chain of activities added to the stack. Otherwise, more "addNextIntent" calls will do.
.addNextIntentWithParentStack( intentOnTop )
.startActivities();