странное поведение iphone MKMapKit - PullRequest
2 голосов
/ 30 августа 2009

Всякий раз, когда я устанавливаю свойство region MKMapKit, оно удваивает диапазон.

Например:

MKCoordinateRegion currentRegion = map.region; // assume the current center of region is around New-York and the span is 2 by 2
map.region = map.region; // assign the region to itself
MKCoordinateRegion newRegion = map.region; 
// the span of newRegion is different (almost twice than currentRegion)

что здесь происходит?

Ответы [ 2 ]

1 голос
/ 27 сентября 2009

Вы также устанавливаете регион.центр для MapView?

Посмотрите описание API свойства региона MKMapView:

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

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

0 голосов
/ 06 октября 2009

У меня тоже получается как на симуляторе, так и на устройстве ... iphone SDK 3.0, xcode 3.2.

также симулятор для SDK 3.1 делает это ... у вас нет устройства с 3.1 прямо сейчас, чтобы попробовать его.

Как они не могли найти эту ошибку ?? Что может быть более простым, чем загрузка и сохранение вашего региона ??

Множество других ошибок в mapkit тоже! : - / это довольно слабо!

Кстати, если вы позвоните regionThatFits, вы получите почти того же региона. Когда вы пытаетесь установить регион, он фактически устанавливает что-то близкое (но не всегда точно) [mapview regionThatFits: yourregion]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...