无法在表视图中列出数据 [关闭]
Posted
技术标签:
【中文标题】无法在表视图中列出数据 [关闭]【英文标题】:Can't list data in Table View [closed] 【发布时间】:2020-05-11 19:43:11 【问题描述】:我可以打印所有数据,但无法在表格视图中列出。 我搜索所有者为 user.user_id 的所有活动 我想在表格视图中列出。 但是表格视图什么也没显示。
【问题讨论】:
请将邮政编码作为文本而不是图像 在 Swift 中将[String:Any]
转换为 NSDictionary
太可怕了。
改成 (snapshot.value as?NSDictionary) 还是不行。
【参考方案1】:
你需要重新加载数据
query. observeSingleEvent(.value, with: [weak self] snapshot in
let result = snapshot.value as [String:Any]
self?.MyAct.append(result as? NSDictionary?)
DispatchQueue.main.async
self?.tableView.reloadData ()
)
【讨论】:
表格视图仍然不显示任何内容。而且我无法在 MyAct[String:Any] 中附加结果 请立即检查...希望能解决您的问题 我尝试添加 self.myActTableView.reloadData() 但还是不行。 你是在主线程上做的吗? 检查 MyAct 计数?【参考方案2】:在append
行下面添加重新加载到表中
self.myAct.append(result as! NSDictionary?)
self.myActTableView.reloadData()
由于请求是异步的,如果你真的需要 observeSingleEvent
而不是昂贵的 observe
,你需要在 append
之前清除数组,如果你不这样做,你会得到重复的Firebase 中数据的任何微小变化
也在viewDidLoad
添加
self.myActTableView.delegate = self
self.myActTableView.dataSource = self
【讨论】:
仍然无法在表格视图中显示数据。 @HiuChungChan 不要忘记添加委托和数据源查看编辑 我在 viewDidLoad 中添加了委托和数据源,但仍然无法正常工作。 你能在追加后print(self.MyAct.count)
吗?你得到了什么?
是的,结果是1以上是关于无法在表视图中列出数据 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章