CLGeocoderを使用して、CLLocationを経度/緯度から地名にデコードします。正常に動作します。しかし、私を悩ませていることがまだ1つあります。デバイスの言語を英語に設定すると、次のコードの結果が表示されます。
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation{
/* We received the new location */
NSLog(@"Latitude = %f", newLocation.coordinate.latitude);
NSLog(@"Longitude = %f", newLocation.coordinate.longitude);
[self.geoCoder reverseGeocodeLocation:newLocation completionHandler:^(NSArray* placemarks, NSError* error){
MKPlacemark *placemarker = [placemarks objectAtIndex:0];
NSLog(@"%@",placemarker.locality);
}];
[self.locationManager stopUpdatingLocation];
}
:chengduのように英語で表示されます。
デバイスの言語を中国語に変更すると、
placemarker.locality
漢字の値を返します。
しかし、私が本当に望んでいるのは、常に英語の文字値を返すことです(漢字の値は返しません)。これはロケールに関連するものだと思います。誰かがこれを手伝うことができますか?ありがとう。