Caché que se está dibujando en MapView en Android

Estoy desarrollando una aplicación para mi campus universitario que muestra el campus en un MapView; A continuación, utilizando geopoints dibuja los contornos de los edificios en el campus en el mapView utilizando el método de dibujo de una clase que extents superposición . Hay aproximadamente 50-60 edificios que son dibujados, dando por resultado un mapa muy laggy como el método del drenaje consigue constantemente dibujado una y otra vez.

He examinado mi problema y he encontrado algunas personas mencionando dibujar los edificios en un lienzo, pero no he encontrado buenos ejemplos o información sobre cómo implementar esto. ¿Puede alguien señalarme en la dirección correcta sobre cómo reducir el desfase del mapa? El mapa se ve muy bonito, pero el retraso sólo mata su utilidad.

¡Gracias!

Si tiene todos los puntos organizados en polígonos, puede dibujar polígonos en un lienzo y dibujarlos en una superposición. Eso creo que sería más rápido.

También siempre se puede hacer un cálculo sobre qué parte del edificio necesita ser redibujado para la siguiente posición y sólo cambiar esa parte de la lona.

Si movió los píxeles (X, Y) de una posición anterior, cambie el lienzo existente a la nueva posición y simplemente dibuje las cosas nuevas que aparecen en el mapa.

Esta no es la solución óptima, por supuesto, porque este tipo de caché no funcionaría con el zoom.

Espero que ayudó de alguna manera! JQCorreia

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.