Жизненный цикл Android: заполнение данных в активности в onStart () или onResume ()?

Если вы получаете данные с помощью курсора и заполняете данные на экране, такие как установка заголовка окна, в onStart () или onResume () ?

onStart () может показаться логичным местом, потому что после onStart () действие уже может отображаться , хотя и в фоновом режиме. В частности, у меня была проблема с управляемым диалоговым окном , которая заставила меня переосмыслить это. Если пользователь поворачивает экран, пока диалоговое окно все еще открыто, onCreateDialog () и onPrepareDialog () вызываются между onStart () и ] onResume () . Если диалоговое окно должно быть основано на данных, которые вам нужны, чтобы иметь данные до onResume () .

Если я прав насчет onStart () , то почему Пример блокнота дает плохой пример, делая это в onResume () ? См. http://developer.android.com/resources/samples/NotePad/src/com/example/android/notepad/NoteEditor.html NoteEditor.java, строка 176 ( title = mCursor.getString ... ).

Кроме того, что, если мое действие запускает другое действие / диалог, который изменяет данные, которые отслеживает мой курсор. Означает ли это, что даже в простейшем случае мне нужно вручную обновить мой предыдущий экран (прослушиватель диалога в основном действии), или, в качестве альтернативы, мне нужно зарегистрировать ContentObserver, поскольку я больше не обновляет данные в onResume () (хотя я мог бы обновить его дважды, конечно)?

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

7
задан pjv 8 January 2011 в 23:36
поделиться