OnCreate no se llama
Tengo 2 Actividades: Primera actividad de usuario hace clic en un botón que lanza la 2 ª actividad. La 2ª Actividad hace todo el trabajo.
Lance la 2da actividad como sigue que está dentro de una clase interna de onClickListener y he intentado explícitamente la llamada con (FirstActivity.this, Simple.Class) pero la misma cosa sucede.
- Excepción de tiempo de ejecución en las pruebas de Android JUnit
- ¿Cómo abrir la actividad ya abierta en vez de crear una nueva?
- Android Development - AlertDialog mostrando dentro de la actividad de la pestaña
- Refrescar un Spinner
- ACTION_SENDTO no funciona
Intent test = new Intent(arg0.getContext(),Simple.class); startActivity(test);
En el emulador, veo que la pantalla se mueve sobre como su llamada la 2da actividad pero todo lo que consigo es una pantalla negra pero nada se carga de mi disposición. Miré a logcat y veo algunos mensajes de error de hilo de enlace. Esta es la función onCreate de mi segunda actividad, pero no obtengo ningún resultado de la pantalla o logcat que me muestre que las funciones de Log fueron llamadas:
public void onCreate(Bundle savedState) { Log.d("SimpleActivity","OnCreate Started"); super.onCreate(savedState); setContentView(R.layout.simple); Log.d("SimpleActivity","OnCreate Ended"); }
Nota: He llamado al constructor base en OnCreate () con super.onCreate (savedState) en mi código anterior.
- Preferencias compartidas de Android con múltiples actividades
- Actividad de Android Invisible por defecto
- Cambiar el color de las pestañas de navegación mediante programación
- Volver a MainActivity desde otra actividad
- Pasar datos de búsqueda a la actividad de búsqueda
- Iniciar la actividad PRINCIPAL de la aplicación actual sin saber su nombre
- ¿Cuál es la mejor manera de mantener el adaptador como una clase interna de actividad o fuera?
- Cuando se reemplaza un fragmento y se coloca en la pila de atrás (o se quita) ¿permanece en la memoria?
Lo que me pasó fue que estaba anulando el método onCreate
equivocado. Estaba anulando public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState)
cuando realmente necesitaba anular protected void onCreate(@Nullable Bundle savedInstanceState)
. Tal vez esto podría ayudar a alguien!
Es posible que onCreate no se llama, si la actividad nunca ha sido destruida, si por alguna razón una actividad se cuelga, la próxima vez que su instanciada no se vuelve a crear, sino que se reanuda en su lugar …
Al menos eso es lo que estoy tratando ahora mismo en mi código … El ciclo de vida de Actividades parece una buena explicación lógica. Sin embargo, el 99% del tiempo sí confío en onCreate siendo llamado cuando startActivity y no me falla … .
Edit: Y por supuesto es porque no estaba llamando finish () al salir de la actividad. Doh.
Necesita llamar al super.onCreate(savedState)
. Echa un vistazo a la actividad doc .
public void onCreate(Bundle savedState) { super.onCreate(savedState); }
Esto no está relacionado con este problema específico, pero también esto puede suceder cuando la actividad no se declara en el archivo de manifiesto)
Debe @Override onCreate y agregue super.onCreate()
en él
@Override public void onCreate(Bundle savedState) { super.onCreate(savedState); Log.d("SimpleActivity","OnCreate Started"); setContentView(R.layout.simple); Log.d("SimpleActivity","OnCreate Ended"); }