Я экспериментирую с Google Maps for iOS SDK последней версии 1.2.1.2944, чтобы анимировать файл GMSGroundOverlay
. Пользователь имеет контроль над последовательностью изображений, поэтому использование анимации, UIImage
к сожалению, невозможно, поэтому я загружаюсь UIImage
на лету. Установлен GMSGroundOverlay.icon
на UIImage
обновляемый.
Помимо большого использования памяти, я, кажется, столкнулся с ограничением в том, что всякий раз, когда я пытаюсь наложить UIImage
использование GMSGroundOverlay.icon
размером более 1000 x 1000 пикселей, происходит сбой. Ссылка на UIImage
1000px x 1000px позволяет избежать сбоя.
Мне кажется, что, возможно, мне следует использовать CATiledLayer
для обработки изображения только загрузку в память и впоследствии в свойство значка GMSGroundOverlay
, но есть ли у кого-нибудь опыт использования CATiledLayer
с Google Maps для iOS SDK и упорядочивания изображений как анимированных GMSGroundOverlay
?
источник
Ответы:
Я получил этот ответ от pressanswer.com, думаю, это может вам помочь.
Поскольку в настоящее время я не могу использовать ключевой путь «позиция» для анимации, я закончил тем, что анимировал его, используя пути клавиш «широта» и «долгота» отдельно.
Сначала вычислите точки и добавьте их в 2 отдельных массива, один для значения широты (y) и один для долготы (x), а затем используйте свойство values в CAKeyFrameAnimation для анимации. Создайте 2 объекта CAKeyFrameAnimation (по 1 для каждой оси), сгруппируйте их вместе с помощью CAAnimationGroup и анимируйте их вместе, чтобы сформировать круг.
В моем уравнении я изменяю длину радиуса на каждой оси, чтобы я мог также создать овальный путь.
источник