【发布时间】:2018-05-18 18:31:41
【问题描述】:
我的 tableView 出现问题,其中填充了领域对象。当我删除一个单元格时,tableView 的最后一个单元格会跳转到已删除单元格的位置。有谁知道这种行为可能是什么原因?
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
if editingStyle == UITableViewCellEditingStyle.delete{
self.updateModel(at: indexPath)
self.loadTimes()
}
}
func loadTimes(){
results = realm.objects(Times.self)
tableView.reloadData()
}
func updateModel(at indexpath: IndexPath) {
if let itemForDeletion = results?[indexpath.row] {
do{
try self.realm.write {
self.realm.delete(itemForDeletion)
}
} catch {
print("Error saving context \(error)")
}
}
}
【问题讨论】:
-
跳跃是什么意思?表格视图是否滚动到意外位置或什么?
-
@Mika 表格视图的最后一个单元格/行正在替换已删除的单元格/行。因此,与往常不同的是,已删除行的下一行正在替换它,它始终是 tableview 的最后一行。首先我认为是因为 RealmBrowser 也在做同样的事情,但在我的其他项目中它对 tableview 没有影响。
标签: swift uitableview realm cell