How to avoid Firebase fatal error: unexpectedly found nil while unwrapping an Optional value?
How to avoid Firebase fatal error: unexpectedly found nil while unwrapping an Optional value?
我正在尝试从 Firebase 读取并将标签设置为我获得的值
这是我的 ViewController class 顶部的样子:
import UIKit
import Firebase
class ProfileTabViewController: UIViewController {
//MARK: Properties
@IBOutlet weak var nameLabel: UILabel!
var userName = "userName"
我在
有一个 Firebase 参考
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
}
}
let 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
等等。
如何避免这个解包错误?谢谢!
注:我是运行XCode7.3
请使用 if let 解包选项,例如
if let name = snap.value as? String{
self.nameLabel.text = name
}
还要检查你的插座是否正确连接,否则它会崩溃..
我正在尝试从 Firebase 读取并将标签设置为我获得的值
这是我的 ViewController class 顶部的样子:
import UIKit
import Firebase
class ProfileTabViewController: UIViewController {
//MARK: Properties
@IBOutlet weak var nameLabel: UILabel!
var userName = "userName"
我在
有一个 Firebase 参考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
}
}
let 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
等等。
如何避免这个解包错误?谢谢!
注:我是运行XCode7.3
请使用 if let 解包选项,例如
if let name = snap.value as? String{
self.nameLabel.text = name
}
还要检查你的插座是否正确连接,否则它会崩溃..