2013-11-12 2 views
0

У меня было два вида деятельности. Когда я перехожу с первого на второе занятие, а затем возвращаюсь к первому, активность воссоздается в некоторых телефонах. Может ли кто-нибудь сказать мне, как предотвратить это?Остановка активности после воссоздания при возобновлении

ответ

2

Я не верю, что вы можете предотвратить это. Если у вас есть какое-то состояние для сохранения, подумайте о его сохранении. Если вам нужно, чтобы все работало в фоновом режиме, подумайте об использовании Service.

1

Вы не можете остановить воссоздание приложения, но вы можете сохранить свое состояние в onSaveInstanceState(Bundle) и получить состояние в onCreate(Bundle) или onRestoreInstanceState(Bundle).

+0

Можете ли вы рассказать мне, как хранить список? Я видел учебные пособия для использования savedInstanceState, но только его пакет, и я не могу хранить listview. – berserk

+1

Во-первых, сохраните содержимое/значения вашего списка, а не список. Во-вторых, извлеките значения, которые хранятся в пакете, а затем восстановите список. – TerrenceSun

+0

Ницца .. спасибо :) – berserk

1

Это намеренное поведение, и вы не должны пытаться его остановить. Но, как упоминалось gnobal, вам нужно будет сохранить состояние и воссоздать свои данные для правильной обработки этих ситуаций.

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

Смежные вопросы