gpt4 book ai didi

swift - 将 Swift 1 加速度计代码更新为 Swift 2 时出错

转载 作者:搜寻专家 更新时间:2023-10-31 22:34:39 26 4
gpt4 key购买 nike

我最近将 Xcode 更新到版本 7,其中还包括 Swift 2。我的很多代码都有错误,我设法修复了其中的大部分错误,只有一个除外。

let manager = CMMotionManager()

if manager.accelerometerAvailable
{
manager.accelerometerUpdateInterval = 0.5
manager.startAccelerometerUpdatesToQueue(NSOperationQueue.mainQueue())
{ // **Error on this line**
[weak self] (data: CMAccelerometerData!, error: NSError!) in
buffer = data.acceleration.y
}
}

产生的错误是:

Cannot convert value of type '(CMAccelerometerData!, NSError!) -> ()' to expected argument type 'CMAccelerometerHandler' (aka '(Optional, Optional) -> ()')

我该如何修复这个错误,以便我的代码可以在 swift 2 上运行?

最佳答案

你不需要声明 block 的类型

manager.startAccelerometerUpdatesToQueue(NSOperationQueue.mainQueue()) {  
[weak self] data, error in
buffer = data.acceleration.y
}

关于swift - 将 Swift 1 加速度计代码更新为 Swift 2 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32830879/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com