Анимация MKOverlayView - PullRequest
       11

Анимация MKOverlayView

9 голосов
/ 15 ноября 2010

У меня есть MKOverlayView, который отображает анимированные радиолокационные данные в виде серии изображений.У меня проблема в том, что с помощью MapKit радиолокационные изображения нарезаются на плитки.Для обмена изображениями у меня есть таймер, который вызывает функцию обновления, которая устанавливает текущее изображение в моем оверлее, а затем вызывает следующее

[myRadarOverlayView setNeedsDisplayInMapRect:self.mapView.visibleMapRect];

Обновление оверлея, но делает это по одной плитке за раз, чтобы яизменчивая анимация.Любые идеи о том, как оживить все плитки (т.е. поменять изображения) в одно и то же время?

Ответы [ 3 ]

6 голосов
/ 05 июля 2011

Я решил это, добавив UIImageView в качестве подпредставления MKOverlayView.

  • Чтобы оживить, остановите рисование с помощью нормальный drawMapRect: zoomScale: inContext: (через переменная экземпляра / флаг свойства) и вместо этого рисовать в UIImageView свойство animationImages), затем использовать startAnimating.

  • Вы можете управлять панорамированием и масштабированием с помощью повторная инициализация UIImageView в ответ на MAPview: regionDidChangeAnimated:.

4 голосов
/ 20 мая 2012

Пример кода для анимации круга:

http://yickhong -ios.blogspot.com / 2012/04 / animated-circle-on-mkmapview.html

0 голосов
/ 26 апреля 2011

Есть ли обратный вызов, когда все плитки закончили загрузку?Если это так, вы можете использовать двойную буферизацию и обновить представление за пределами экрана, а затем включить его.

...