因此,在更新到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)
任何想法/帮助将不胜感激。
答案 0 :(得分:4)
对于条件if (MKMapRect.isNull(zoomRect))
,您需要将其更改为if (zoomRect.isNull)
您不能检查MKMapRect
类型的条件,只能检查该类型的实例化对象。