iOS mapview выпуск / вопрос - PullRequest
2 голосов
/ 01 июля 2011

У меня есть приложение, которое я разрабатываю для iOS, и приложение выполняет следующие действия:

Загрузка и установка аннотаций, запуск ядра и масштабирование до местоположения.

Существует множество аннотаций накарта, загрузка данных не занимает много времени, но фактическое отображение их на карте занимает некоторое время ... так что пользовательский интерфейс немного останавливается, а затем, наконец, получает corelocation и увеличивает его.

Хотя это и функционально, но это не идеальный пользовательский интерфейс. Я мог бы инвертировать порядок, чем сначала делать масштабирование corelocation, а затем вызвать аннотации add, но это приведет к паузе в пользовательском интерфейсе, так какхорошо, так как аннотации добавляются в поток пользовательского интерфейса, и не говоря уже о том, что corelocation может занять некоторое время, чтобы сначала определить его местоположение.

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

Возможно, лучший способ сделать это - показатьЗАНЯТО / РАБОТАЮЩИЙ спиннер на карте, пока не закончится?

Что обычно считается лучшей практикой?

Ответы [ 3 ]

1 голос
/ 22 июля 2011

Вы можете использовать OCMapView для кластеризации всех аннотаций.Как уже упоминалось, карта может обрабатывать множество аннотаций, но производительность снижается с количеством нарисованных видов, и MKannotationViews не имеют значения.OCmapView кластеризует все аннотации и отображает их объединенными в единый аннотационный вид.попробуйте, это бесплатно.https://github.com/yinkou/OCMapView

1 голос
/ 04 августа 2011

Я просто сделал то же самое, что и с версией для Android, в то время как iphone может обрабатывать большее количество аннотаций гораздо лучше, чем droid, подход с отложенной загрузкой, безусловно, лучше для обеих платформ.

Спасибо за помощь, ребята.

0 голосов
/ 02 июля 2011

Я думаю, что вашим лучшим решением было бы просто не добавлять "много" аннотаций на карту.У MKMapView много чего происходит, и не нужно тонны аннотаций, чтобы увязнуть в этом.Существует несколько творческих способов сократить количество аннотаций.

Если у вас много аннотаций, которые тесно сгруппированы, рассмотрите возможность объединения их в одну аннотацию, которая затем будет разделена на отдельные аннотации.аннотации, когда пользователь достигает удовлетворительно близкого уровня масштабирования.

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

Выглядит ли какой-либо из этих вариантов жизнеспособным или заставляет задуматься о другом творческом способе помочь вашей ситуации?

...