ios - 是否可以根据 map View 的中心抓取城市等信息

标签 ios objective-c mkmapview

我有一个 MKMapView 并想根据 MKMapView 的中心获取城市名称。我根本不想删除任何图钉或注释。只需根据 MKMapView 位置的中心自动抓取数据。我知道有这种方法“[placemarkName locality]”。但是有没有不使用地标的方法呢?

最佳答案

您可以从 map View 的 centerCoordinate 执行 reverseGeocodeLocation(有效 iOS 5+)。例如,我可以这样做:

CLLocationCoordinate2D center = self.mapView.centerCoordinate;

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

[coder reverseGeocodeLocation:[[CLLocation alloc] initWithLatitude:center.latitude longitude:center.longitude] completionHandler:^(NSArray *placemarks, NSError *error) {
    self.cityLabel.text = [[placemarks firstObject] locality];
}];

诚然,这会返回一组地标,但在提取城市名称后您无需对它们执行任何操作。

关于ios - 是否可以根据 map View 的中心抓取城市等信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21247952/

相关文章:

ios - 离屏 iOS 6 MKMapViews 和 UIViewPrintFormatter — 让它们及时渲染?

objective-c - iOS 8 Mapview 当前位置不开火

iphone - UIImageView 带有大图像。问题

ios - 如何在 iOS 应用程序中获取某个位置的时区?

iphone - iPad 键盘不会从具有 Model View Controller 样式 UIModalPresentationFormSheet 的 View Controller 调用的 Facebook 对话框中关闭

iphone - 如何使用网页 View 作为页面( subview )制作无缝 ScrollView

ios - 如何从 MKAnnotationView 标注中排除用户位置?

ios - 测试 userDefaults 和私有(private)函数

ios - 使用 JSON 对象填充 Swift 中的 TableView

ios - 在 Swift 中使用 Hashable 扩展 @objc 协议(protocol)