有没有人知道每次更改时如何自动将子值更新为tableView
?我必须终止应用程序,重新启动它时,我能够看到更新的值。如何在不终止应用程序的情况下更新这些内容?
var ref: DatabaseReference?
var databaseHandle: DatabaseHandle?
var postData = [String]()
class TableViewController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
ref = Database.database().reference()
databaseHandle = ref?.child("Posts").observe(.childAdded, with: { (snapshot) in
let post = (snapshot.value as AnyObject).description
if let actualPost = post {
postData.append(actualPost)
self.tableView.reloadData()
}
})
}
答案 0 :(得分:0)
你应该改变
self.tableView.reloadData()
到
DispatchQueue.main.async {
self.tableView.reloadData()
}
可能有用。因为所有与UI相关的工作都应该在主队列中进行