2010-10-16 16 views
22

Necesito capturar las posiciones absolutas de algunas ImageViews para usarlas como objetivos de colocación. Parece que no puedo encontrar el evento en el que necesito ingresar mi código para leer la pantalla y obtener las posiciones izquierda(), superior() .. No quiero monitorear el inflado de cada vista individual. Debe haber algún tipo de evento tipo OnScreenFinsihed, pero no puedo encontrarlo. onMeasure y onDraw parecen dispararse al inicio de su trabajo. Necesito saber cuándo terminaron. TIA.¿Qué evento se dispara después de que todas las vistas se dibujan por completo?

Respuesta

30

No hay tal evento. Simplemente puede publicar un mensaje/Ejecutable en la cola de eventos de la interfaz de usuario al comienzo de una secuencia de dibujo para que se ejecute este mensaje/Ejecutable una vez finalizado el dibujo (consulte View.post (Runnable) por ejemplo). Además, getLeft/getTop devuelve el valor correcto después de la medición y el diseño, no es necesario esperar a que el dibujo finalice para usarlos.

Cuestiones relacionadas