2013-07-15 5 views
4

При вызове startActivity (Intent намерения) от моей деятельности, метод OnDestroy() всегда будет вызван на него, так что я теряю состояние фрагментов, и т.д ...startActivity всегда вызывая OnDestroy по первоначальной активности

Мое понимание заключается в том, что onStop следует называть, а onDestroy можно или не может назвать. Но мой опыт заключается в том, что первоначальная деятельность всегда разрушается.

Я понимаю, что если у меня есть активность с listView, с адаптером и т. Д. Android не ожидает, что я буду поддерживать состояние адаптера просто потому, что я нажимаю еще одну операцию поверх этого, верно?

Правильно ли я? Что может вызвать такое поведение?

Спасибо

+0

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

+0

Я тестирую устройство, да. Не знал об этом! Я проверю это прямо сейчас. – LocoMike

+2

На моей Галактике s2 ее настройки> параметры разработчика> вниз, Не держите действия, может быть, что-то похожее на вашем устройстве. – Neil

ответ

13

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

settings > developer options > go down to the bottom under apps section > 

Do not keep activities

отключите эту опцию, чтобы остановить деятельность всегда разрушается, когда вы покидаете их.

+1

OMG, ты определенно спас мой день! Я думаю, что он сохраняется почти на каждом устройстве Samsung, если у него есть отдельный раздел «Параметры разработчика». – the4kman

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