'MKMapRectIsNull' 已替换为 属性 'MKMapRect.isNull'
'MKMapRectIsNull' has been replaced by property 'MKMapRect.isNull'
所以在更新到 Xcode 10 和 Swift 4.2 时,当然我不得不在我的项目中做很多更改来更新语法。除了一个问题,我能够纠正所有问题。我收到一条错误消息:'MKMapRectIsNull' 已被 属性 'MKMapRect.isNull' 替换。我做了一件显而易见的事情,尝试用 MKMapRect.isNull 替换 MKMapRectIsNull,但这会产生另一个错误:Instance成员 '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)
任何 ideas/help 将不胜感激。
对于条件 if (MKMapRect.isNull(zoomRect))
您需要将其更改为 if (zoomRect.isNull)
您无法检查 MKMapRect
类型的条件,只能检查该类型的实例化对象。
所以在更新到 Xcode 10 和 Swift 4.2 时,当然我不得不在我的项目中做很多更改来更新语法。除了一个问题,我能够纠正所有问题。我收到一条错误消息:'MKMapRectIsNull' 已被 属性 'MKMapRect.isNull' 替换。我做了一件显而易见的事情,尝试用 MKMapRect.isNull 替换 MKMapRectIsNull,但这会产生另一个错误:Instance成员 '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)
任何 ideas/help 将不胜感激。
对于条件 if (MKMapRect.isNull(zoomRect))
您需要将其更改为 if (zoomRect.isNull)
您无法检查 MKMapRect
类型的条件,只能检查该类型的实例化对象。