ios - 添加单击识别器在 GMSMapview 中不起作用

标签 ios objective-c gmsmapview

我正在使用 GMSMapview,当我在 map 上实现单击手势时,它无法正常工作。我该怎么做?

tapRec = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(mapDidTap:)];
tapRec.delegate = self;
tapRec.numberOfTapsRequired = 1;
[mapView2 addGestureRecognizer: tapRec];

 -(void)mapDidTap:(UITapGestureRecognizer *)gestureRecognizer 
{
[mapView2 removeGestureRecognizer:tapRec];
_filterView.hidden = YES;
}

最佳答案

您不需要添加点击手势。 GMSMapView 提供了自己的方法来检测特定纬度/经度上的点击。

func mapView(mapView: GMSMapView, didTapAtCoordinate coordinate: CLLocationCoordinate2D) {
    //Coordinates where user has tapped
    print(coordinate)
}

关于ios - 添加单击识别器在 GMSMapview 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39467687/

相关文章:

ios - 当我点击标记时,Google map 的旧行为

ios - 快速在 Google map 中自定义标记

objective-c - 子类化UIButton,但是我无法执行“addTarget:action:forControlEvents:”吗?

objective-c - for 循环中的表达式结果未使用警告

ios - 我如何在 iOS Swift 的单个项目中使用两个 GMSMapViews

ios - 将 UITableView 样式更改为 "Grouped"导致崩溃

ios - UIbutton 自动调整大小

ios - Chartboost Swift 实现 : CoreData: warning: Unable to load class named 'CBHTTPRequestEntity' for entity 'CBHTTPRequestEntity'

iOS Swift 如何从 TableView 中的所有选定行中提取字符串

objective-c - 如何在 NSView 之外接收通知?