Intereting Posts
Позиционирование кнопок ОК / Отмена, чтобы они имитировали макет в диалогах Java.lang.NullPointer Исключение в getResources (). GetString (R.string.value); Как использовать многоуровневые макеты с помощью ViewPager Генератор QR-кода в android Android Открыть меню с помощью кнопки Лучшее место для вызова RecyclerView.Adapter.notifyItem *? Android обнаруживает Bluetooth-разъединение сразу Почему эта установка не работает? (Загрузка завершена с неправильным размером – eclipse and android SDK manager) Как предоставить разрешение на использование adb без укорачивания устройств Перенос с GCM 2.0 на GCM 3.0 API-интерфейс InstanceID Как обернуть содержимое, как изображение, кнопку внутри макетов Android? Повторите сложный макет для каждой записи Потоковое видео с камеры android на сервер Почему Eclipse не видит мой телефон Samsung Galaxy, хотя я могу передавать файлы с помощью буквы диска? Я только что создал небольшой проект Android в Eclipse, какие файлы я должен добавить к управлению версиями?

Android очищает / завершает предыдущие действия, кроме одного

В android у меня есть следующий путь:

Действие 1 -> Действие 2 -> Действие 3 -> … Действие N -> нажмите кнопку …

Когда нажимается кнопка, я хочу очистить / закончить все действия от Activity 2 до N, а затем перейти к Acitivy X. Другими словами, я хочу закончить все действия до первого, а затем перейти к другому.

Если я использую флаги:

CLEAR_TOP, CLEAR_TASK, NEW_TASK и т. Д.

Теоретически это закончило бы ВСЕ предыдущие действия с первоначальным. Есть ли способ сохранить начальную жизнь и перейти к активности X?

Если вы уже посетили акт и не вызвали finish() при его удалении, сделайте это

 finish(); Intent mIntent = new Intent(Create_Your_Pizza.this, MainActivity.class); mIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);; mIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(mIntent); 

Я не уверен, что понимаю этот вопрос. Вернее, причина того, что вы не можете использовать FLAG_ACTIVITY_CLEAR_TOP .

Если установлено, и запущенная деятельность уже запущена в текущей задаче, то вместо запуска нового экземпляра этого действия все остальные действия поверх нее будут закрыты, и этот намерение будет доставлен в (теперь Наверх) старая деятельность как новое намерение.

Например, рассмотрите задачу, состоящую из действий: A, B, C, D. Если D вызывает startActivity () с намерением, который разрешает компонент активности B, то C и D будут завершены, а B получит заданное намерение , В результате чего стек теперь составляет: A, B.

Если я правильно понимаю, это именно то, что вы хотите. В частности,

Действие 1 -> Действие 2 -> Действие 3 -> … Действие N -> нажмите кнопку …

Запуск намерения с Activity2.class и флагами FLAG_ACTIVITY_CLEAR_TOP | FLAG_ACTIVITY_SINGLE_TOP FLAG_ACTIVITY_CLEAR_TOP | FLAG_ACTIVITY_SINGLE_TOP вернется к существующему экземпляру Activity2 (вместо создания нового) и предоставит новое намерение в onNewIntent() . Вам просто нужно добавить дополнительное для этого намерения, чтобы этот метод знал, что он должен позже вызвать ActivityX.

То есть, если я не упустил что-то. 🙂