2012-10-27 61 views
8

使用MKMapView設置位置座標時,程序崩潰。 日誌:MKMapView NSInvalidArgumentException ios6中的區域崩潰無效

終止應用程序由於未捕獲的異常 'NSInvalidArgumentException',理由是: '無效的地區<center:+112.57075000, +37.87049600 span:+0.05165163, +0.43945312>'

跨度在我的計劃是

MKCoordinateSpan span; 
span.latitudeDelta = .05; 
span.longitudeDelta = .02; 

編碼後:

self.mMKMapview.region = [self.mMKMapview regionThatFits:region]; 

as日誌顯示,跨度更改爲:+0.05165163,+0.43945312

任何人都請幫忙,我在這裏呆了兩天。

謝謝!

回答

10

的問題是center座標:

112.57075000,37.87049600

緯度必須是從-90到+90所以112.57075超出範圍。

檢查中心座標如何設置或數據是否向後。


此外,你並不需要顯式調用regionThatFits因爲地圖視圖自動執行它,當你設定的正常區域(即只需調用setRegion)。順便說一下,地圖視圖根據需要調整跨度以適應地圖視圖尺寸或縮放級別是很正常的。

1

我使用以下代碼來設置區域:

if(centerLat > -89 && centerLat < 89 && centerLng > -179 && centerLng < 179){ 
    [self.mapView setRegion:region animated:YES]; 
}