“ MKMapRectIsNull”已由属性“ MKMapRect.isNull”替换

时间:2018-09-19 22:40:54

标签: swift xcode mapkit mkmapview swift4.2

因此,在更新到Xcode 10和Swift 4.2时,我当然必须在项目中进行很多更改以更新语法。除了一个问题,我能够解决所有问题。我收到一条错误消息:'MKMapRectIsNull'已由属性'MKMapRect.isNull'代替。我做了明显的尝试,尝试将 MKMapRectIsNull 替换为 MKMapRect.isNull ,但这会产生另一个错误,指出:实例成员'isNull'不能用于类型' MKMapRect”。。这里有更多上下文:

var zoomRect = MKMapRect.null
    for annotation in map.annotations {
        let annotationPoint = MKMapPoint(annotation.coordinate)
        let pointRect = MKMapRect(x: annotationPoint.x, y: annotationPoint.y, width: 0, height: 0)
        if (MKMapRect.isNull(zoomRect)) {
            zoomRect = pointRect
        } else {
            zoomRect = zoomRect.union(pointRect)
        }
    }
    map.setVisibleMapRect(zoomRect, edgePadding: UIEdgeInsets(top: 40, left: 40, bottom: 40, right: 40), animated: true)

任何想法/帮助将不胜感激。

1 个答案:

答案 0 :(得分:4)

对于条件if (MKMapRect.isNull(zoomRect)),您需要将其更改为if (zoomRect.isNull)

您不能检查MKMapRect类型的条件,只能检查该类型的实例化对象。