Я хочу перезагрузить свой TableView после того, как получу всю информацию из Firestore.
Пока это мой код: но он все равно не имеет смысла. Я просто пишу на go. Как я могу написать блок завершения для Firestore
Спасибо.
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "inseratCell", for: indexPath) as! ListTableViewCell
let returnCell = getCellInfo(indexInt: indexPath.row, cell: cell) { error, cell in
}
return cell
}
func getCellInfo(indexInt: Int, cell: ListTableViewCell,completion: @escaping(_ success:Bool, _ cell: ListTableViewCell)-> ()) {
let db = Firestore.firestore()
db.collection("Inserate").document(inserate[indexInt]).getDocument { (document, error) in
if error == nil {
if document != nil && document!.exists {
let documentData = document!.data()
if(documentData != nil){
cell.cityLabel.text = documentData!["Ort"] as? String
cell.costLabel.text = "\(documentData!["Kaufpreis"] as! String) €"
cell.groundSquareLabel.text = "\(documentData!["Grundgröße"] as! NSNumber) m²"
cell.HousesquareLabel.text = "\(documentData!["Wohnfläche"] as! NSNumber) m²"
cell.HousesquareLabel.text = "\(documentData!["Wohnfläche"] as! NSNumber) m²"
cell.idLabel.text = document?.documentID
let imageUrl = documentData!["TitleBild"] as! String
let url = URL(string: imageUrl)
ImageService.downloadImage(withURL: url!) { image in
cell.imageM.image = image
}
}
}
}
}
return completion(true, cell)
}