2016-04-12 10 views
1

私はFirebaseから読み込まれた値にラベルを設定しようとしています、私は避ける方法Firebaseの致命的なエラー:オプション値をアンラッピングしている間に予期せずnilが見つかりましたか?

を得る。これは、私のViewControllerクラスのトップは、次のようになります。私は

でFirebaseリファレンスを持っている

import UIKit 
import Firebase 

class ProfileTabViewController: UIViewController { 

//MARK: Properties 

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

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

ランダムな文字列は、Firebaseによって返されるuidです。

私はviewDidAppear()メソッドでは、ユーザー名を取得しようとしています:

override func viewDidAppear(animated: Bool) { 

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

} 

レット名の行が正常に動作します。

print(name) 

このライン:

self.nameLabel.text = name 

原因:

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

私は

let name = snap.value as? String 

を試みたし、それは動作しません。

FIREBASE

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

など:

これは私のFirebaseがどのように見えるかです。

このアンラッピングエラーを回避するにはどうすればよいですか?ありがとう!

注:私は

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

などのoptionalsのラップを解除しても、あなたのコンセントが正しく接続されていることを確認してみましょう場合に使用してくださいXCodeの7.3

+0

同じことを墜落しました。致命的なエラー:オプションの値をアンラッピングしている間に予期せぬ結果が発生しました。 (lldb) –

+1

コンセントが正しく接続されているかどうかを確認してください –

+0

新しいラベルを削除して追加すると信じられません。ありがとうございました!うーん! –

答えて

3

を実行しているそれ以外の場合は...

関連する問題

 関連する問題