我正在制作一个简单的计步器应用tutorial,我收到以下错误
无法转换类型的值'(CMPedometerData!,_) - >无效的 预期参数类型'CMPedometerHandler'(又名 '(可选,可选) - > ()')
在这些代码行上:
if(CMPedometer.isStepCountingAvailable()){
let fromDate = NSDate(timeIntervalSinceNow: -86400 * 7)
self.pedoMeter.queryPedometerDataFromDate(fromDate, toDate: NSDate()) { (data : CMPedometerData!, error) -> Void in
print(data)
dispatch_async(dispatch_get_main_queue(), { () -> Void in
if(error == nil){
self.steps.text = "\(data.numberOfSteps)"
}
})
}
self.pedoMeter.startPedometerUpdatesFromDate(midnightOfToday) { (data: CMPedometerData!, error) -> Void in
dispatch_async(dispatch_get_main_queue(), { () -> Void in
if(error == nil){
self.steps.text = "\(data.numberOfSteps)"
}
})
}
}
答案 0 :(得分:5)
编译器告诉您所提供的处理程序类型错误 - 您将第一个参数作为隐式解包的可选项而不是可选的(它具有apachectl configtest
而不是{{1 }}),第二个参数根本没有类型。换句话说,看起来像这样的位:
!
......应该看起来像这样:
?