2009-08-30 10 views
2

MKMapKit의 region 속성을 설정할 때마다 범위가 두 배가됩니다. 예를 들어iphone의 이상한 동작 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) 

여기 무슨 일이야?

+0

또한 지역 속성이 매우 이상한 행동을 한 것으로 나타났습니다. 제 경우에 이것은 지역이 컸을 때 (100 킬로미터 너비 이상) 일어났습니다. 작은 규모에서는 이것이 발생하지 않았습니다. –

+1

업데이트 :이 버그는 시뮬레이터에서만 나타납니다. iPhone의 MapKit이 올바르게 작동합니다. –

답변

1

MapView의 region.center도 설정 했습니까?

MKMapView의 영역 속성 API 설명에서

봐 :.

중앙 부분 만 여전히 암시 적으로 변경할 수있는 범위를 일으킬 수있는 지역 의 좌표를 변경

"이것은 거리가에 의해 표현 때문이다 span 뷰를 변경하면지도 뷰에서 새 위치를 고려하여 범위를 조정해야 할 수도 있습니다. 줌 레벨을 변경하지 않고 센터 좌표를 변경하려면 centerCoordinate를 대신 사용하십시오.

이 글은 region.center를 변경할 때 중심 좌표를 기준으로 계산 된 값으로 지역 범위 설정을 재정의 할 수 있다는 것을 의미합니다.

+0

아니요, region.center를 설정하지 않았습니다. 그것은 내가 게시 한 코드 일뿐입니다. 지도의 영역을 자체 영역으로 설정하면 범위가 두 배가됩니다. –

0

나는 시뮬레이터와 장치 모두에서 ... iPhone SDK 3.0, xcode 3.2.

또한 SDK 3.1 용 시뮬레이터는 다음과 같은 기능을 제공합니다. 현재 3.1을 사용하는 장치가 없어야합니다.

어떻게이 버그를 찾을 수 있습니까 ?? 지역을로드하고 저장하는 것보다 더 기본적인 것은 무엇일까요 ??

mapkit에도 많은 버그가 있습니다! :/그것은 꽤 약하다!

여러분이 regionThatFits를 호출하면 을 거의 같은 지역으로 가져옵니다. 이 영역을 설정하려고하면 실제로 뭔가 가깝게 설정됩니다. (항상 그렇지는 않습니다.) [mapview regionThatFits : yourregion]