-4
로 이름이 바뀌 었습니다, 나는 오류를 받고 있어요 :오류 : 스위프트 3.0</p> <p>오류를 컴파일하는 동안 'NSOperationQueue는'엑스 코드 8.0에서 OperationQueue
" 'NSOperationQueue는'OperationQueue로 이름이 바뀌 었습니다"언제 OperationQueue.mainQueue()로 전환하면 "mainQueue"메서드가 존재하지 않습니다! 대체 된 것은 무엇입니까 ???
let manager = CMMotionManager()
if manager.isGyroAvailable {
manager.gyroUpdateInterval = 0.1
manager.startGyroUpdates()
let queue = NSOperationQueue.mainQueue()
manager.startGyroUpdatesToQueue(queue) {
(data, error) in
// ...
}
}
if manager.isAccelerometerAvailable {
manager.accelerometerUpdateInterval = 0.01
manager.startAccelerometerUpdatesToQueue(NSOperationQueue.mainQueue()) {
[weak self] (data: CMAccelerometerData?, error: NSError?) in
if let acceleration = data?.acceleration {
self.physicsWorld.gravity = CGVectorMake(acceleration.x, acceleration.y)
}
}
}
NSOperationQueues가 올바르게 형식화되도록 위의 코드를 수정하는 방법은 무엇입니까?
오류는 매우 명확합니다. 'NSOperationQueue'를'OperationQueue'로 변경하십시오. 해당 API에 대해서는'OperationQueue' 문서를보십시오. – rmaddy
"NSOperationQueue"의 어느 부분이 OperationQueue로 이름이 변경 되었습니까? 이해하지 못합니까? – matt
좋습니다. 나는 구체적으로 xcode 오류가있는 'fix-it'옵션이있는 특정 상황에 주목하고 있습니다. 오류에 수정 기능을 사용하면 NSOperationQueue의 이름을 OperationQueue로 바꿉니다. 그 결과는 그다지 효과적이지 않으며 실제로 아무 것도 고치지 않습니다. 이름을 변경 한 후에 문제 해결 방법에 대한 좋은 의견을 실제로 제공하지는 않습니다. 또한 'stackoverflow에 대한 빠른 참조를 사용하면 다른 사람이 이러한 문제를 겪게되는 대신 빠른 해결책을 찾을 수 있습니다. 문서를 검색 할 수 있습니다. – JThora