Да, я видел previous question на этом, но я до сих пор не могу заставить это работать. Мой предыдущий код Swift2 был ...Использование startDeviceMotionUpdates под Swift 3
motionMgr.startDeviceMotionUpdatesToQueue(NSOperationQueue(), withHandler: handleMove)
, который называется:
func handleMove(motion: CMDeviceMotion?, error: NSError?) {
...
}
Это изменилось под Swift3, и теперь startDeviceMotionUpdatesToQueue
использует замыкание. Я не могу для жизни понять, как назвать мой существующий метод. Я понимаю, что NSError
стал Error
и другими незначительными изменениями, но синтаксис вызова от закрытия меня очень смущает.
Спасибо @ Натан. Ключом для меня был завершающий синтаксис, который мне было гораздо легче понять. Я просто поставил func-вызов в трейлинг-закрытие, и это было так! –
motionMgr.startDeviceMotionUpdates (с использованием: CMAttitudeReferenceFrame.xTrueNorthZVertical, к: OperationQueue()) { \t \t \t \t deviceMotion, ошибка в self.handleMove (движение: deviceMotion, ошибка: ошибка) \t \t \t} –