XCode 6.3 MKPointAnnotation setCoordinate 缺失
XCode 6.3 MKPointAnnotation setCoordinate missing
我刚刚将 XCode 更新到 6.3,现在我收到以下错误:
MKPointAnnotation 没有名为 'setCoordinate'.
的成员
不确定它去了哪里,或者我们是否应该使用其他 MK 方法。感谢任何帮助。
func refreshlocation(lat:String, lon:String, withOffset:Bool = false){
// 1 Convert the string values to something that can be used.
let location = CLLocationCoordinate2D(
latitude: (lat as NSString).doubleValue as CLLocationDegrees,
longitude: (lon as NSString).doubleValue as CLLocationDegrees
)
// 2 setup some initial variables.
let span = MKCoordinateSpanMake(
(self.locationLatitudeDelta as NSString).doubleValue as CLLocationDegrees,
(self.locationLongitudeDelta as NSString).doubleValue as CLLocationDegrees
)
let region = MKCoordinateRegion(center: location, span: span)
mapView.setRegion(region, animated: true)
//3 decorate the point and add the point to the map.
var annotation = MKPointAnnotation()
annotation.setCoordinate(location) //Error on this line
}
如 iOS 8.3 API Diffs in the MapKit module 中所述,setCoordinate
方法已删除:
Removed MKAnnotation.setCoordinate(CLLocationCoordinate2D)
幸运的是,您现在必须使用更简单的赋值语法(在 Swift 的早期版本中已经可用,在 Objective-C 中也可以这样做):
annotation.coordinate = location
我刚刚将 XCode 更新到 6.3,现在我收到以下错误: MKPointAnnotation 没有名为 'setCoordinate'.
的成员不确定它去了哪里,或者我们是否应该使用其他 MK 方法。感谢任何帮助。
func refreshlocation(lat:String, lon:String, withOffset:Bool = false){
// 1 Convert the string values to something that can be used.
let location = CLLocationCoordinate2D(
latitude: (lat as NSString).doubleValue as CLLocationDegrees,
longitude: (lon as NSString).doubleValue as CLLocationDegrees
)
// 2 setup some initial variables.
let span = MKCoordinateSpanMake(
(self.locationLatitudeDelta as NSString).doubleValue as CLLocationDegrees,
(self.locationLongitudeDelta as NSString).doubleValue as CLLocationDegrees
)
let region = MKCoordinateRegion(center: location, span: span)
mapView.setRegion(region, animated: true)
//3 decorate the point and add the point to the map.
var annotation = MKPointAnnotation()
annotation.setCoordinate(location) //Error on this line
}
如 iOS 8.3 API Diffs in the MapKit module 中所述,setCoordinate
方法已删除:
Removed MKAnnotation.setCoordinate(CLLocationCoordinate2D)
幸运的是,您现在必须使用更简单的赋值语法(在 Swift 的早期版本中已经可用,在 Objective-C 中也可以这样做):
annotation.coordinate = location