2016-04-12 7 views
1

Ich versuche, von Firebase und stellen Sie das Etikett auf den Wert ISo vermeiden Sie den schwerwiegenden Fehler in der Firebase: unerwartet wurde beim Entpacken ein optionaler Wert Null gefunden?

Diese erhalten zu lesen ist, was die Spitze meiner Viewcontroller Klasse wie folgt aussieht:

bei

import UIKit 
import Firebase 

class ProfileTabViewController: UIViewController { 

//MARK: Properties 

@IBOutlet weak var nameLabel: UILabel! 
var userName = "userName" 

Ich habe eine Firebase Referenz

var currentUserName = Firebase(url: "https://buzzmovieios.firebaseio.com/users/884962b7-9fd8-49db-b172-1ad7cb1414f4/Name") 

Die zufällige Zeichenfolge ist die von Firebase zurückgegebene uid.

Ich versuche, den Benutzernamen in der viewDidAppear() -Methode zu erhalten:

override func viewDidAppear(animated: Bool) { 

    print(currentUserName) 
    currentUserName.observeEventType(.Value) { (snap: FDataSnapshot!) in 
     let name = snap.value as! String 
     self.nameLabel.text = name 
    } 

} 

die let Namenszeile funktioniert gut.

print(name) 

Diese Zeile:

self.nameLabel.text = name 

Ursachen:

fatal error: unexpectedly found nil while unwrapping an Optional value (lldb)

I

let name = snap.value as? String 

habe versucht, und es funktioniert nicht. Diese

ist, was meine Firebase wie folgt aussieht:

FIREBASE

buzzmovieios 
    users 
     --884962b7-9fd8-49db-b172-1ad7cb1414f4 
       Major: CS 
       Name: Shawn 
     --8880069d-1944-493d-8246-8119fc4bfc81 

und so weiter.

Wie kann ich diesen Auspackfehler vermeiden? Vielen Dank!

Hinweis: Ich bin mit XCode 7.3

+0

Gleiche: fataler Fehler: unerwartet gefunden Null beim Entpacken ein optionaler Wert (lldb) –

+1

Bitte überprüfen Sie Ihre Steckdose ist richtig angeschlossen oder nicht –

+0

Ich glaube nicht, dass ... Löschen und Hinzufügen eines neuen Etikettes funktioniert. Vielen Dank! URGH! –

Antwort

3

benutzen Sie bitte, ob wir optionals wie

if let name = snap.value as? String{ 
     self.nameLabel.text = name 
    } 

auszupacken und auch überprüfen, ob Ihre Steckdosen richtig sonst verbunden abgestürzt ..