У меня есть TableView
, который я время от времени обновляю с помощью таймера, так что данные TableView меняются при необходимости ... Что происходит, когда данные обновляются, но они дублируются и не устраняютсяданные, которые у него были ранее, затем генерируют гигантский TableView.
Как я могу заставить их обновлять, но удалять данные, которые у меня были ранее, и оставлять только новые ячейки при обновлении таблицы?
Это код, который я использую в таймере для обновления телевизора:
@objc func updatetableview(){
databaseRef.child("A_Usuarios").queryOrdered(byChild: "TipoUsuario").queryEqual(toValue: "Empresa").observe(.childAdded, with: { (snapshot) in
let key = snapshot.key
self.snap = (snapshot.value as? NSDictionary)!
self.snap.setValue(key, forKey: "Uid")
self.city = self.snap["Ciudad"] as? String ?? ""
self.activo = self.snap["Activo"] as? String ?? ""
if self.city == self.cdad && self.activo != "No" {
if(key == self.loggedInUser?.uid){
print("Same as logged in user, so don't show!")
}
else
{
self.usersArray.append(self.snap)
//insert the rows
self.tableview.insertRows(at: [IndexPath(row:self.usersArray.count-1,section:0)], with: UITableView.RowAnimation.automatic)
}
}
}) { (error) in
print(error.localizedDescription)
}
Надеюсь, вы мне поможете, большое спасибо!