Cómo detectar si la actividad principal de la vista se está destruyendo

Quiero hacer una limpieza en una vista cuando la actividad está siendo destruida. ¿Hay alguna manera de obtener una devolución de llamada en la vista cuando se está destruyendo la actividad? Intenté usar onDetachedFromWindow , pero no estoy seguro si es cosa correcta de hacer.

Con la comprensión de que onDestroy no se garantiza que se llame, sólo puede devolver la llamada a su vista en el método onDestroy de actividades.

Editar en respuesta al comentario: puede obtener cualquier vista dándole un id en el diseño y llamando a findViewById. He aquí un ejemplo:

Layout.xml (mostrando sólo el mínimo)

 <LinearLayout> <com.example.superwidget.DropDownTouchEnabledListView android:id="@+id/special_list_view" /> </LinearLayout> 

MyActivity.java (nuevamente, mínimo y suponiendo las importaciones adecuadas)

 @Override void onDestroy() { DownTouchEnabledListView v = (DownTouchEnabledListView)findViewById(R.id.special_list_view); v.doCallback(with, parameters); } 

Si desea obtener una devolución de llamada sin tener que sobrecargar el método View.onDetachedFromWindow() , puede utilizar el método View.addOnAttachStateChangeListener() , que toma un oyente de devolución de llamada como un solo parámetro.

  • ¿Examinar todas las sub-vistas de una vista de Android?
  • Android: ¿cuál es la diferencia entre los estados enfocado, habilitado, presionado y seleccionado?
  • Caché de dibujo de Android
  • GetWidth y getHeight devuelven un cero
  • ¿En qué momento del ciclo de vida de la aplicación puede / debe utilizar mediciones de diseño?
  • Android: cómo deshabilitar todos los clics en una vista
  • Cómo crear una vista parcialmente invisible
  • Custom View onDraw se llama constantemente
  • Android ¿hay alguna llamada de vista cuando se destruye?
  • android- puede hacer que un objeto dibujado en un lienzo haga clic
  • Mejores prácticas de Android: vistas / actividades
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.