Swift-Fehler : Wert optional Typ 'Double?' nicht ausgepackt

Ich bin Neuling in Swift, was diese Fehlermeldung :

let lvt=self?.lastVibrationTime
let delta=self!.deltaTime
let sens=self!.shakeSensitivity
let time:Double = CACurrentMediaTime()

//error is on `lvt` and says : Error:(37, 27) value of optional type 'Double?' not unwrapped; did you mean to use '!' or '?'?
if time - lvt > delta && data.userAcceleration.x < sens {
                    println("firmly shaken!")
                    self?.vibrateMe()
                }
  • In deiner if-Anweisung, können Sie versuchen, ändern Sie die lvt zu lvt!
  • Raten "lastVibrationTime" deklariert ist "optional". Das bedeutet, dass es könnte null sein, so müssen Sie wickeln Sie es vor dem Gebrauch.
  • Es hat funktioniert, aber was bedeutet es?
  • var lastVibrationTime : Double = 0 // ist es optional?
  • Nein, aber da Sie "selbst" als optional, das kann nicht sein, so versuchen, zu entfernen "? und !" nach sich selbst und Sie werden just fine.
InformationsquelleAutor AVEbrahimi | 2015-03-31
Schreibe einen Kommentar