Android - перезапуск действия без необходимости его повторного создания - PullRequest
2 голосов
/ 09 января 2012

У меня есть активность, которая показывает изображение (ViewCollection.java).Я хочу создать его только один раз, а затем повторно использовать этот экземпляр для дальнейшего отображения большего количества изображений из разных вызовов (инициализация операции является дорогой).До сих пор я запускал действие следующим образом:

Intent i = new Intent(this, ViewCollection.java);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);

И все вызовы действий из действия ViewCollection также вызываются одним и тем же методом.Но, несмотря на это, действие продолжает разрушаться, когда я запускаю другие действия с него ... Что я могу сделать, чтобы это исправить?

* PS: Для действия задан "стандартный" режим запуска

Ответы [ 2 ]

3 голосов
/ 09 января 2012

Установить режим запуска активности на singletop или установить флаг FLAG_ACTIVITY_SINGLE_TOP.
Обрабатывать намерение в onNewIntent () Вы можете получить более подробную информацию здесь

Редактировать: Хотя, если вернетсянажата кнопка для действия или конфигурации, измененной с момента последнего входа в приложение, действие все еще будет воссоздано

0 голосов
/ 09 января 2012

Попробуйте избавиться от этой строки

 i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);

таким образом вы можете вернуться к предыдущему занятию

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...