De acuerdo con el artículo "Fundamentos de la aplicación", la sección "ciclo de vida de los componentes", onResume() siempre se invoca cuando se activa una vista, independientemente del estado anterior.Android - Tutorial de bloc de notas - Ciclo de vida: ¿algún trabajo realizado dos veces?
En el tutorial Bloc de notas, el ejercicio 3, he encontrado algo confuso en NoteEdit.java:
hay una llamada a populateFields() en onCreate(), así como en onResume().
¿No sería suficiente (o incluso mejor) tenerlo solo en onResume()?
En un pequeño ejemplo tal, no hará ningún daño si populateFields() se lleva a cabo dos veces, pero en una más grande de aplicaciones, las cosas pueden ser diferentes ...
Gracias y Saludos,
Markus N.
Yepp, creo que invocarlo en Reesume también debería ser mejor también. – icyerasor
no es exactamente una respuesta, pero si se llama a onStop y luego onRestart, no se invocará onCreate ... aún no se explica por qué se llama en onCreate en todos los casos indeseables, tal vez convención y legibilidad – CrackerJack9
onCreate es bueno para inicializar referencias a cosas, pero desea guardar la mayor parte del manejo de su estado en onResume, que correctamente señala que es el lugar apropiado. ¡También tenga en cuenta que debe hacer eso en AsyncTask para mantener contentos a los usuarios! El diagrama en la página del ciclo de vida de la actividad de Android es la mejor referencia, y si quiere ser estricto, programe una actividad de máquina de estado, porque hay algunas sutilezas bajo la combinación correcta de pantallas de cambio de usuario, etc. –