У меня есть класс
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()
для подтверждения правильности данных. Однако когда я использую функции для табличного представления
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
}
, табличное представление не заполняется. Я знаю, что этот метод работает, потому что я использовал что-то похожее на это в другой части моего кода (не загружая данные, а заполняя табличное представление)
Редактировать: я пытался удалить класс и нормально добавить в массив без использования .name
из класса. Тем не менее, это тоже ничего не сделало