获取触摸位置谷歌地图iOS

时间:2014-03-31 16:53:44

标签: ios uiview google-maps-sdk-ios

GMSMapView创建一个处理手势识别器的UIView,我想检测用户触摸的UIView中的哪个位置,我可以获得标记位置(相对于地图坐标)但我想要在视图上触摸的当前位置。有什么想法?。

1 个答案:

答案 0 :(得分:6)

如果我的问题是正确的,你想在Map的UIView中计算触摸位置的CGPoint吗?

所以,你有一个来自Delegate方法的CLLocationCoordinate2D,你可以通过在GMSMapview上调用GMSProjection对象来获得它的位置,如:

- (void)mapView:(GMSMapView *)mapView didTapAtCoordinate:(CLLocationCoordinate2D)coordinate {
 CGPoint locationInView = [mapView.projection pointForCoordinate:coordinate]; // capitalize the V
}

并且locationInView将是所需的位置。那么,GMSProjection的方法

- (CGPoint)pointForCoordinate:(CLLocationCoordinate2D)coordinate;

在Map的视图中为您提供触摸点。

希望有所帮助:)