Swift:点击地图视图时转到另一个视图

Swift: Segue to another view when Map View is tapped

我想在点击地图视图后执行到另一个视图的 segue,就像当您检查位置并点击 instagram 上的地图或在 foursquare 中一样。

我无法像在按钮中那样将地图视图本身直接连接到另一个视图,并且我不想在点击标注按钮时执行 segue。

我找到了一个解决方法,将一个不可见的按钮放入 mapView,并在按钮被点击时执行 segue(用户认为 mapView 被点击)

但我想知道是否有更好的解决方案,没有按钮。

您可以使用 UITapGestureRecognizer

   let gestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(self.tapHandler(_:)))
    mapView.addGestureRecognizer(gestureRecognizer)

    @objc func tapHandler(_ gestureReconizer: UIGestureRecognizer) {


       // let location = gestureReconizer.location(in: mapView)
       // coordinatte of taplocation
      // let coordinate = mapView.convert(location,toCoordinateFrom: mapView)

      // **you can navigate or perform Your Actions there**

    }