1

使用 MKMapView 时,我确实注意到了 IOS 11 上的一个问题。

当我想从 pin 对话框中单击按钮操作并且按钮操作后面有另一个 pin 时,它不会获得手势。

应该是关于zPosition的东西,但我不知道有没有办法只修改zPosition对话框的(MKAnnotationView.annotation),把它放在pins前面(MKAnnotationView.image) position

因为IOS version < 11它确实工作得很好。

有人有同样的麻烦吗?

谢谢!

4

1 回答 1

1

Finally I've found a solution!

Here it comes, if someone needs it:

func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {
    if #available(iOS 11, *) {
        for annotationView in mapView.annotations {
            if mapView.view(for: annotationView) == view {
                    mapView.view(for: annotationView)?.isUserInteractionEnabled = true
                    mapView.view(for: annotationView)?.becomeFirstResponder()
            }
            else{
                mapView.view(for: annotationView)?.isUserInteractionEnabled = false
            }
        }
    }
}

All in order now!

于 2018-03-01T16:23:05.480 回答