Как правильно получить данные акселерометра с помощью Swift в iOS?

Я пытаюсь записать данные с акселерометра iPhone (мой собственный iPhone 5s) и установить метку на экране для этих данных, используяString(format: "%.2f", data) где данные - это значение для конкретной оси, которую я хочу записать. Для этого я настроил CMMotionManager и начал записывать данные акселерометра, и у меня есть таймер, который постоянно обновляет текст на этикетке. Тем не менее я получаю сообщение об ошибке из XCode: «Неустранимая ошибка: неожиданно обнаружил ноль при развертывании Необязательное значение». Вот соответствующий код:

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    //if accelerometer can be used, start it
    if (motionManager.accelerometerAvailable) {

        motionManager.accelerometerUpdateInterval = 0.1

        motionManager.startAccelerometerUpdates()
        let timer = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector: Selector("update"), userInfo: nil, repeats: true)
    }



}

func update () {
    if (motionManager.accelerometerActive) {

        accelX.text = String(format: "%.2f", motionManager.accelerometerData.acceleration.x)
    }

}

Ошибка прекращается, когда я меняю назначение accelX.text на простую строку, поэтому я думаю, что необязательная переменная, создающая ошибку, связана с акселерометром. Это, насколько я знаю, однако, поэтому, если у вас есть какие-либо предложения, или если я делаю это совершенно неправильно, и есть лучший и более простой способ, я определенно буду признателен, если вы мне поможете.

Ответы на вопрос(2)

Ваш ответ на вопрос