Прежде всего, вы можете добавить это расширение для просмотра таблицы и затем удалить строку, чем после того, как вам необходимо перезагрузить данные таблицы, как показано ниже,
extension UITableView {
func reloadDataAfterDelay(delayTime: TimeInterval = 0.4) -> Void {
self.perform(#selector(self.reloadData), with: nil, afterDelay: delayTime)
}
}
Строка просмотра таблицы выглядит следующим образом.
func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? {
let repo = numberofrecord[indexPath.row]as! [String] // your datasource
let delete = UITableViewRowAction(style: .destructive, title: "Delete", handler: {
act,del in
let query = "delete from repost where id=\(repo[0])"; // delete the datasource from databases.
let s = db.dml(query: query)
if s == true {
print("media delete")
}
else{
print("not deleted");
}
self.numberofrecord.remove(at: indexPath.row) // delete datasource from array.
self.tbl.beginUpdates()
self.tbl.deleteRows(at: [indexPath], with: .automatic) // delete row of table.
self.tbl.endUpdates()
self.tbl.reloadDataAfterDelay() // Reload the table after some delay.
})
return [delete]
}
это правильно и отлично работает в быстром темпе.