Xcode用户界面无法使用最新的Firebase值更新
问题描述:
我有一个使用Firebase提取和存储数据的应用程序。在我使用的ViewDidLoad中:Xcode用户界面无法使用最新的Firebase值更新
fullnameTextField.text = currentUser.fullName
其中currentUser.fullname引用字典。现在,我有一个函数在火力地堡更新此信息:
@IBAction func saveFullNameDidTap(_ sender: Any) {
let ref = DatabaseReference.users(uid: currentUser.uid).reference().child("fullName")
if let fullName = fullnameTextField.text {
ref.setValue(fullName)
}
fullnameTextField.resignFirstResponder()
fullnameSaveButton.isHidden = true
alert(title: "", message: "Name Successfully Changed", buttonTitle: "OK")
}
这确实改变火力地堡的信息,但是当我重新加载特定页面,在该领域的数据回复到原来的值。如果我重新构建应用程序,它将被更新为正确的信息。每次更改时如何将最新数据导入现场?
答
我想你应该使用重新加载新的价值观的观点:
view.setNeedsDisplay()
答
这似乎是工作
@IBAction func saveFullNameDidTap(_ sender: Any) {
let ref = DatabaseReference.users(uid: currentUser.uid).reference().child("fullName")
let fullName = fullnameTextField.text
ref.setValue(fullName)
currentUser.fullName = fullName!
fullnameTextField.resignFirstResponder()
fullnameSaveButton.isHidden = true
alert(title: "", message: "Name Successfully Changed", buttonTitle: "OK")
}