无法自动更新表格视图中的子值
Posted
技术标签:
【中文标题】无法自动更新表格视图中的子值【英文标题】:Cannot auto update child values in tableview 【发布时间】:2017-11-24 03:59:40 【问题描述】:有谁知道每次更改时如何将子值自动更新为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()
)
【问题讨论】:
您是在谈论更新单元格吗?使用 reloadData() 更新tableViewCells
中的数据,在此处查看更多信息 developer.apple.com/documentation/uikit/uitableview/…
【参考方案1】:
你应该改变
self.tableView.reloadData()
到
DispatchQueue.main.async
self.tableView.reloadData()
这可能有效。因为所有与 UI 相关的工作都应该发生在主队列中
【讨论】:
以上是关于无法自动更新表格视图中的子值的主要内容,如果未能解决你的问题,请参考以下文章