Swift:在点击Map View时查看另一个视图

时间:2018-05-07 07:44:44

标签: swift mkmapview segue

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

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

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

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

1 个答案:

答案 0 :(得分:1)

您可以使用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**

    }