How do you retrieve the user's current city name?
As of iOS 5 MKReverseGeoCoder
is Deprecated!
So you want to use CLGeocoder
with CLLocationManager
, very simple and works with block.
Example:
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
{
[self.locationManager stopUpdatingLocation];
CLGeocoder * geoCoder = [[CLGeocoder alloc] init];
[geoCoder reverseGeocodeLocation:newLocation
completionHandler:^(NSArray *placemarks, NSError *error) {
for (CLPlacemark *placemark in placemarks) {
.... = [placemark locality];
}
}];
}
Edit: Instead of a for in
loop you can also do:
NSString *locString = placemarks.count ? [placemarks.firstObject locality] : @"Not Found";