2010-05-12 13 views
7

Necesito volver a dibujar la plantilla después de que el usuario amplía.
¿Cuál es la mejor manera de hacer esto?
He intentado todo lo que podía pensar (al guardar un estado getZoomLevel(), reemplazando onUserInteraction()), nada funciona en realidad.
El problema es que se llama a draw() cuando el usuario hace clic en el zoom, por lo que la información que obtiene mi método de dibujo (Acerca del estado del mapa) es diferente del estado una vez que la vista de mapa finaliza el zoom.
Además, draw() no se está llamando al final del zoom, por lo que solo si se desplaza por el mapa, la superposición se está dibujando correctamente.Eventos de zoom que funcionan en un android Mapview

Respuesta

2

Como nadie ha respondido esto en 7 meses, escribiré lo que terminé haciendo.

Usé un controlador para actualizar el mapa manualmente después de 500ms, funcionó bien.

Handler handler; 
handler.postDelayed(refreshRoute, 500); 
0

¿Has intentado llamar al mapview.postInvalidate() después del zoom?

Cuestiones relacionadas