0

我目前正在使用將使用reversegeocode返回的數據的應用程序。現在,我可以成功接收以下位置值:地址,城市,州,郵政編碼和國家/地區。除了我能夠獲得的值之外,我還想獲取我反向地理位置的鄰域名稱。我的代碼如下:當我反向地理代碼時,CLGeocoder不返回鄰域名稱

CLLocationManager *location = [[CLLocation alloc] init]; 
[location setDelegate:self]; 
location.desiredAccuracy=kCLLocationAccuracyBest; 
location.distanceFilter=kCLDistanceFilterNone; 

[location startMonitoringSignificantLocationChanges]; 

CLGeocoder *geolocation = [[CLGeocoder alloc] init]; 

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations 
{ 
NSLog(@"Update method is definitely being called!"); 
NSLog(@"Your current location is : %@", [locations lastObject]); 
[geolocation reverseGeocodeLocation:[locations lastObject] completionHandler:^(NSArray *placemarks, NSError *error) { 
    NSLog(@"Reverse geocode complete: %@", placemarks); 

    CLPlacemark *placemark = [placemarks objectAtIndex:0]; 
    NSLog(@"The locality area is: %@", placemark.locality); 
}]; 
} 

我預計placemark.locality返回鄰居,但它返回城市,而不是。

任何幫助將不勝感激,
戴夫

回答

1

閱讀文檔蘋果已經爲CLPlacemark下課後,我注意到,有幾個領域,我是不知道的。

在這些領域的包容性正是我想要獲得的,subLocality,這似乎是鄰居的Apple文檔。如果我剛剛閱讀文檔,而不是假設從[placemarks objectAtIndex:0]返回的對象,當存儲在CLPlacemark *地標中時,將沒有比調用NSLog(@"%@", [placemarks objectAtIndex:0])時顯示的數據更多的數據,我本可以更早地計算出該數據。好吧。我用來訪問社區的代碼是:

[placemark subLocality]; 
相關問題