непрерывный / повторяющийся MKMapView

#iphone #objective-c #ios #mkmapview

#iPhone #objective-c #iOS #mkmapview

Вопрос:

Я ищу MKMapView, который можно непрерывно прокручивать в любом направлении и повторять. Это должен быть MKMapView / подкласс, а не пользовательский Map-фреймворк, такой как route-me.

Как реализовать это поверх MKMapView?

Комментарии:

1. Вы имеете в виду обойти землю или повторить данный (небольшой) участок карты?

2. Чтобы обойти землю в любом направлении при любом уровне масштабирования.

Ответ №1:

Я не знаю, есть ли уже для этого рамки, но вот идея.

Используйте образец бесконечной прокрутки из wwdc idea и примените его к mapview. Так, например, используйте два вида карты рядом (для бесконечной прокрутки вдоль оси X)

Обычно отображается один mapview, но когда перетаскивание проходит за края влево / вправо, вы можете выдвинуть один mapview и вставить другой mapview.

Конечно, вашему viewcontroller потребуется добавить аннотации к обоим mapviews, и если вы хотите поддерживать любое направление, это может означать, что вам нужно 4 вида карты для покрытия углового корпуса.

Вероятно, вы можете обрабатывать mapview как scrollview при выполнении этого трюка с бесконечной прокруткой, как описано в сеансе прокрутки wwdc 2011.

Чтобы синхронизировать оба вида карты, вам нужно будет передавать сообщения между двумя, например, уровень масштабирования. Не уверен, что в mapview есть все, что вам нужно для наблюдения за этими вещами, но посмотрите. Возможно, вы могли бы использовать KVO для наблюдения за внутренней переменной, не нарушая проверку Apple private API.

Удачи и дайте мне знать, как это происходит.

Комментарии:

1. Танки! Я уже думал об этом и начал его реализовывать, но, к сожалению, только новейшие устройства могут (ячмень) обрабатывать 4 mapviews одновременно со всеми их аннотациями. : ( Большое вам спасибо за то, что поделились своими мыслями, но для меня этого недостаточно. :/