试图通过带有commiteditStyleStyle函数的TableView使用删除行功能,但是Realm似乎使这一点变得更加困难。
该函数最初是在不使用Realm数据库的情况下创建的,只是一个用于填充TableView的数组。尽管使用Realm的工作方式并不完全相同,并且删除功能无法正常工作。
override func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
if editingStyle == .delete {
if let courseForDeletion = courses?[indexPath.row] {
do {
try realm.write {
realm.delete(courseForDeletion)
}
} catch {
print("Error deleting course: \(error)")
}
tableView.deleteRows(at: [indexPath], with: .automatic)
}
}
}
预期给定行上的滑动手势会生成红色删除功能,通常会在不使用Realm时发生。
答案 0 :(得分:-1)
是什么让您认为删除功能不起作用?
要查看该行被删除,您需要调用tableview.reloadData()