IOS 11 - 当另一个引脚落后时,MKMapView引脚对话框无法点击

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS 11 - 当另一个引脚落后时,MKMapView引脚对话框无法点击相关的知识,希望对你有一定的参考价值。

在使用MKMapView时,我注意到ios 11上存在问题。

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

它应该是关于zPosition的东西,但我不知道是否有任何方法可以修改对话框zPosition(MKAnnotationView.annotation)并将其放在引脚(MKAnnotationView.image) position前面。

对于IOS version < 11来说,它确实很有效。

有人遇到同样的麻烦吗?

谢谢!

答案

最后我找到了解决方案!

如果有人需要它,它来了:

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
            }
        }
    }
}

一切都井然有序!

以上是关于IOS 11 - 当另一个引脚落后时,MKMapView引脚对话框无法点击的主要内容,如果未能解决你的问题,请参考以下文章

MKPolyline 的问题

当另一个元素(类)为 display:none 时隐藏 .innerHTML; [关闭]

iOS:地图视图注释未显示针脚

当另一个客户端发送到服务器时,如何让 UDP 服务器推送到客户端

iOS 中的 iBeacons - 没有来自实际 BLE 设备的回调,但是当另一个 iOS 设备用作广播器时会调用 didRangeBeacons

当另一个 HTML 页面向其发布表单时,HTML 页面会引发 405 错误