cómo comprobar si una actividad implementa una interfaz después de onAttach (Activity activity) ha sido depreciada
Dado que onAttach (Activity) ha sido obsoleto en SDK 23, ¿cuál es el mejor método en el ciclo de vida de Fragment para comprobar si una Actividad está implementando una interfaz?
este código ya no es correcto y en el futuro este método podría incluso ser eliminado.
- Transición de la actividad: Realización de la parada de la actividad que no se reanuda
- Distinguir entre presionar el botón "inicio" y abrir otra Actividad
- OnCreate siendo llamado en la actividad A en la navegación ascendente
- Cómo funciona el servicio Foreground (proceso diferente / mismo proceso) cuando Android tiene poca memoria
- OnCreate () vs OnStart ()
@Override public void onAttach(Activity activity) { super.onAttach(activity); if (activity instanceof OnInterfaceOfFragmentListener) mCallback = (OnInterfaceOfFragmentListener) activity; else throw new RuntimeException("OnInterfaceOfFragmentListener not implemented in activity"); }
- Realizar una pausa de actividad que no se reanuda después de volver a crear el método
- La mejor manera de implementar Socket.io en android
- Cuando se llama onRestoreInstanceState?
- Android: Duplicación de fragmentos al utilizar el Administrador de fragmentos de soporte
- NavUtils.navigateUpTo () no inician ninguna Actividad
- ¿Cómo tratar los datos retenidos después de que la actividad llegue a primer plano cuando se utiliza más de una actividad?
- Uso del servicio como singleton en Android
- Evitar que la actividad sea destruida tanto como sea posible
El código seguirá siendo el mismo, sólo debe estar utilizando un parámetro de contexto en lugar de una actividad, según la documentación .
@Override public void onAttach(Context context) { super.onAttach(context); if (context instanceof OnInterfaceOfFragmentListener) mCallback = (OnInterfaceOfFragmentListener) context; else throw new RuntimeException("OnInterfaceOfFragmentListener not implemented in context"); }
Puede utilizar el método alternativo proporcionado por el marco. Tiene el mismo lugar en el ciclo de vida que onAttach (Actividad)
onAttach(Context context)
Y para comprobar si implica una cierta interfaz:
public void onAttach(Context context) { if(context instanceOf YourInterface) { // do stuff } else throw new RuntimeException("XYZ interface not implemnted"); }
- ¿Cómo recargar la página en un proyecto de Córdoba?
- Android Detener la notificación de brindis por programación?