【发布时间】:2016-03-05 20:01:30
【问题描述】:
我正在尝试通过迁移现有的 Objective-C 项目来学习 Swift,但其中一种方法存在一些问题。
我收到以下错误:“无法将类型 '(SBStop, UInt, _) -> Void' 的值转换为预期的参数类型 '(AnyObject, Int, UnsafeMutablePointer) -> Void'”
关于如何让这个工作的任何建议?
斯威夫特:
stops.enumerateObjectsUsingBlock({(stopItem: SBStop, idx: UInt, stop) -> Void in
stopLocation = CLLocation(latitude: stopItem.latitude, longitude: stopItem.longitude)
stopItem.distance = stopLocation.distanceFromLocation(location)
})
工作 Objective-C 代码:
[stops enumerateObjectsUsingBlock:^(SBStop *stopItem, NSUInteger idx, BOOL *stop) {
stopLocation = [[CLLocation alloc] initWithLatitude:stopItem.latitude longitude:stopItem.longitude];
stopItem.distance = [stopLocation distanceFromLocation:location]; // in meters
}];
【问题讨论】:
标签: ios objective-c swift