2010-08-10 31 views
2

我一直在使用地圖視圖,並遇到這些變量:span.longitudeDelta和span.latitudeDelta ...他們似乎影響屏幕縮放量(可能通過設置窗口的x/y?)任何人都可以告訴我這些值做什麼以及它們與緯度/經度的屏幕寬度/高度有何關係?Objective C地圖查看問題

謝謝你的時間。

編輯:我想知道這是因爲我想弄清楚什麼程度的拉特和長我的屏幕正在看....例如:如果我放大出路,我的屏幕的左手邊可能是34.533,右側可能是39.324。

回答

1

你有正確的想法。這些值是地圖視圖的寬度和高度(以度爲單位),以地圖的中心點爲中心。

map.region是您可以讀取或設置的MKCoordinateRegion。 MKCoordinateRegion是一個包含兩個字段的結構:center和span。 map.region.center是一個CLLocation2D結構體(它有兩個字段,緯度和經度),map.region.span是一個帶有你提到的字段的MKCoordinateSpan結構體。

如果你想設置一個地圖,以顯示給定區域,創建一個MKCoordinateRegion,設置屬性,然後確保該區域適合您地圖的配合尺寸:

MKCoordinateRegion scaledRegion = [map regionThatFits:region]; 
[map setRegion:scaledRegion animated:NO]; 

的你的屏幕左邊緣是(大致,因爲經線不平行):

float leftEdgeLongitude = map.region.center.longitude - (map.region.span.longitudeDelta/2); 
+0

謝謝你的非常好的迴應。 – 2010-08-10 20:32:10