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
を試みたし、それは動作しません。
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
同じことを墜落しました。致命的なエラー:オプションの値をアンラッピングしている間に予期せぬ結果が発生しました。 (lldb) –
コンセントが正しく接続されているかどうかを確認してください –
新しいラベルを削除して追加すると信じられません。ありがとうございました!うーん! –