Estoy experimentando con la última versión 1.2.1.2944 del SDK de Google Maps para iOS para animar un archivo GMSGroundOverlay
. El usuario tiene control sobre la secuencia de imágenes, por lo que el uso de una animación UIImage
no es una posibilidad, lamentablemente, así que lo estoy cargando UIImage
sobre la marcha. Se GMSGroundOverlay.icon
establece en el UIImage
que se actualiza.
Aparte del alto uso de memoria, parece que he encontrado una limitación en el sentido de que cada vez que intento superponer un UIImage
uso de GMSGroundOverlay.icon
más de 1000px x 1000px, se bloquea. UIImage
Hacer referencia a un valor de 1000px x 1000px evita el bloqueo.
Sin embargo, me sorprende que tal vez debería utilizar CATiledLayer
para manejar la imagen para cargarla solo en la memoria y luego en la propiedad del icono GMSGroundOverlay
, pero ¿alguien ha tenido alguna experiencia en el uso CATiledLayer
con Google Maps para iOS SDK y la secuenciación de imágenes como una animación GMSGroundOverlay
?
fuente
Respuestas:
Obtuve esta respuesta de pressanswer.com, creo que puede ayudarte.
Como actualmente no puedo usar la ruta clave de "posición" para animar, terminé animándola usando las rutas clave de "latitud" y "longitud" por separado.
Primero calcule los puntos y agréguelos a 2 matrices separadas, una para el valor de latitud (y) y otra para la longitud (x) y luego use la propiedad de valores en CAKeyFrameAnimation para animar. Cree 2 objetos CAKeyFrameAnimation (1 para cada eje) y agrúpelos usando CAAnimationGroup y anímelos para formar un círculo.
En mi ecuación, varío la longitud del radio en cada eje para que también pueda generar una trayectoria ovalada.
fuente