2012-03-19 48 views
4

有關如何在Apple文檔旁邊使用前向地理編碼的工作示例或某些指導的說明。這是非常通用的(我不明白)使用CLGeocoder的轉發地理編碼示例

請這將是偉大的!也有人知道他們是否使用Google API實現相同或自己的?

+0

http://stackoverflow.com/questions/1140404/forward-geocoding-from-the-iphone/2444249#2444249,嘗試 – iNoob 2012-03-19 13:42:45

+1

已經做到了,一個答案指向CLGeocoder但不顯示任何內容。那裏的解決方案有iOS5之前的版本。現在,我們已將地理編碼作爲內置解決方案提供。 – carbonr 2012-03-19 17:55:36

回答

11

找到了這個工作,但我會在這裏發佈它,如果有人認爲它有用。

CLGeocoder *geocoder = [[CLGeocoder alloc] init]; 
    [geocoder geocodeAddressString:PlaceName.text completionHandler:^(NSArray *placemarks, NSError *error) { 
     //Error checking 

     CLPlacemark *placemark = [placemarks objectAtIndex:0]; 
     MKCoordinateRegion region; 
     region.center.latitude = placemark.region.center.latitude; 
     region.center.longitude = placemark.region.center.longitude; 
     MKCoordinateSpan span; 
     double radius = placemark.region.radius/1000; // convert to km 

     NSLog(@"Radius is %f", radius); 
     span.latitudeDelta = radius/112.0; 

     region.span = span; 

     [mapView setRegion:region animated:YES]; 
    }]; 
+1

根據Map Kit數據類型參考,在MKCoordinateSpan下蘋果注意到: 緯度一度總是大約111公里(69英里)。 雖然沒有驗證這是否爲真。 – redshift5 2012-10-17 02:04:27

+0

@AliakseiN。我沒有注意到你的評論。 112不是魔法。如果您將1度轉換爲公里,您將得到這 – carbonr 2012-10-17 13:20:02

+0

@碳緯度1°緯度= 69.047法定里程= 60海里 = 111.12公里 – 2012-10-22 16:16:51