Swift:点击 map View 时转到另一个 View

标签 swift mkmapview segue

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

我无法像在按钮中那样将 map View 本身直接连接到另一个 View ,并且我不想在点击标注按钮时执行 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**

    }

关于Swift:点击 map View 时转到另一个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50209343/

相关文章:

xcode - swift 错误 : EXE_BAD_INSTRUCTION (code=EXC_I386_INVOP, 子代码 = 0x0)

ios - 使 UILabel 或 UITextView 的最后几行快速淡出。请检查所附图片

ios - 如何延迟提示位置服务权限

iphone - MKMapview 在 iPad 中仅显示 50% 宽度

ios - 将数组传递给 segue

ios - 如何在UITabBar之间快速传递数据

ios - 自动完成的搜索结果

ios - 在 map 应用 iOS 上获取方向功能

ios - Swift 类中的引用参数

ios - 在removeFromSuperview()之后UIView w/animation没有被删除