Дополнения на основе REORDER_TO_FRONT - PullRequest
0 голосов
/ 28 сентября 2011

В приложении я очень многократно использовал Activity, которая показывает список вещей, происходящих в определенный день.День задается с помощью Intent Extras.

Моя проблема в том, что если пользователь начинает с day=1, затем выбирает из меню day=2, а затем day=1, то мне нужна кнопка возвратачтобы перейти к day=2, а затем домой.То есть я хочу сделать REORDER_TO_FRONT, но не только на основе имени действия, но и его дополнений.

Нет шва, чтобы были какие-либо намеренные флаги, подходящие для этой цели.Я подумал о реализации своего собственного «стека суб-активности» с использованием onNewIntent, но, вероятно, он не будет работать очень хорошо.

Вы сталкивались с подобными проблемами в своих приложениях?Возможно, есть способ программно получить доступ к стеку действий и выбрать, какой из них подходит для возврата?

1 Ответ

1 голос
/ 03 октября 2011

Управляйте своим собственным стеком Активности! Если я не ошибаюсь, вы используете одну и ту же активность для отображения каждый день. Сделайте это одним верхом (FLAG_ACTIVITY_SINGLE_TOP). В намерении запуска передайте текущий стек, в вашем примере «121».

Ответьте на событие кнопки «Назад», запустив вашу активность с меньшим стеком: «12» - или, если стек уже «», тогда просто позвольте активности обработать событие «Назад». Затем, как вы упомянули, используйте функцию onNewIntent для обновления вашей активности.

...