2010-03-22 43 views
0

這是我的問題:當我試圖設置我的地圖的縮放級別時,我正在縮放到與我請求不同的級別。從setRegion獲取不同的輸出:在MKMapView

這裏是我使用的代碼:

 MKCoordinateRegion cRegion =      
     MKCoordinateRegionMake 
     (myMapView.userLocation.coordinate, MKCoordinateSpanMake(.001, .0001)); 

     MKCoordinateRegion aRegion = [myMapView regionThatFits:cRegion]; 
     [myMapView setRegion:cRegion animated:YES]; 

我做的第一件事就是創建一個區域與範圍是在緯度方向.001 0.0001在經度方向。我的推理是,這會給我一個橫跨整個.001度緯度的條子。然後我可以將它扔進regionThatFits:它會吐出一個橫跨0.001度緯度的區域,無論我的地圖視圖需要跨越經度方向以保持縱橫比。相反,我得到:

Lat Range: 0.000969508 
    Long Range: 0.000858307 

任何想法爲什麼緯度範圍,我認爲會是.001不是?

在此先感謝您的幫助!

+0

我找到了一個可以準確獲得所需地圖區域的解決方案,請參閱我的帖子http://stackoverflow.com/questions/3612007/mkmapview-setregion-snaps-to-predefined-zoom-levels/7935 – AlexWien 2011-10-29 13:10:14

回答

0

這是MKMapView的setRegion中的一個錯誤。請參閱請參閱MKMapView show incorrectly saved region

+0

其實這不是一個錯誤。它是有據可查的,並按照文件記錄的行爲。請參閱https://developer.apple.com/library/iOS/#documentation/MapKit/Reference/MKMapView_Class/MKMapView/MKMapView.html – Frizlab 2013-04-05 08:24:09