gpt4 book ai didi

ios - 在 Firestore 中使用 .getDocuments 并尝试将文档 ID 放入数组并使用 tableview 显示它们后无法显示数据

转载 作者:行者123 更新时间:2023-12-01 15:44:25 26 4
gpt4 key购买 nike

我有课

class List {

var name: String

init(name: String) {

self.name = name

}
}

用于制作数组。我声明了数组

var providersList = [List]()

然后使用函数

func downloadData() {

db.collection("\(finalSelection.lowercased())_providers").getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {
for document in querySnapshot!.documents {
self.providersList.append(List(name: "\(document.documentID)"))


}
}
}

}

下载数据。数据下载正确,因为没有错误,我还使用 print() 确认数据正确。但是,当我使用 tableview 的函数时

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "MoreCell", for: indexPath) as! MoreInfoTableViewCell

cell.moreInfoLabel.text = providersList[indexPath.row].name

return cell
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return providersList.count
}

TableView 未填充。我知道这种方法有效,因为我在我的代码的另一个区域使用了类似的东西(不是下载数据而是填充表格 View )

编辑:我尝试删除类并正常追加到数组,而不使用类中的 .name。但是,这也没有做任何事情

最佳答案

好的,所以我在躺在床上准备 sleep 的时候找到了解决办法(笑)。在函数 downloadData() 中,我必须在附加到数组后放入 self.tableView.reloadData()。对于像我一样遇到类似问题的任何人,我会将其包括在内。

函数下载数据(){

db.collection("\(finalSelection.lowercased())_providers").getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {
for document in querySnapshot!.documents {
self.providersList.append(List(name: "\(document.documentID)"))
self.tableView.reloadData()


}
}
}

关于ios - 在 Firestore 中使用 .getDocuments 并尝试将文档 ID 放入数组并使用 tableview 显示它们后无法显示数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61513369/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com