XCode 6.3 MKPointAnnotation setCoordinate缺失 [英] XCode 6.3 MKPointAnnotation setCoordinate missing
问题描述
我刚刚将XCode更新为6.3,现在我收到以下错误:
MKPointAnnotation没有名为'setCoordinate'的成员。
I just updated XCode to 6.3 and now I am receiving the below error: MKPointAnnotation does not have a member named 'setCoordinate'.
不确定去哪里,或者我们应该使用其他MK方法。任何帮助都表示赞赏。
Not sure where it went, or if we are supposed to use some other MK method. Any help is appreciated.
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
}
推荐答案
如 MapKit模块中的3.2i API扩散, setCoordinate
方法已被删除:
已移除 MKAnnotation.setCoordinate(CLLocationCoordinate2D)
Removed MKAnnotation.setCoordinate(CLLocationCoordinate2D)
幸运的是,您现在必须使用更简单的赋值语法(在以前的Swift版本中已经可以使用,并且可以在Objective-C中完成):
Fortunately, you must now use the simpler assignment syntax (which was already available in previous versions of Swift and the same could be done in Objective-C):
annotation.coordinate = location
这篇关于XCode 6.3 MKPointAnnotation setCoordinate缺失的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!