ios - 有没有办法知道何时从 UITableView 中删除了 UITableViewCell?
问题描述
我正在展示一个UITableView
由RxRealmDataSources驱动的。
当表中的一行被删除时,我需要执行一些操作。
有没有一种方法,每当从表中删除一行时,都会使用已删除行的索引路径调用一个函数?
编辑 -
我的应用程序中单元格的 UIUITableView
取决于两件事 -
- 从领域 db ( info )获取的数据对象
- 行的索引位置
每当一个单元格被删除时,我都需要更新其下一个单元格的 UI。
如果更新数据库的唯一方法是用户的直接操作,那么我可以使用func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath)
方法来获取indexPath
应该删除的单元格并更新下一个单元格的 UI。
但是,数据库同步到云端,数据库绑定到表格视图,因此我无法控制何时添加或删除单元格。正是出于这个原因,我想知道是否有办法知道何时从UITableView
解决方案
你在评论中说:
通过“删除”,我的意思是当单元格从表格视图中删除时,就像我们向左滑动单元格以将其删除时一样。
由于您标记了 RxSwift,因此解决方案是使用itemDeleted
如下:
tableView.rx.itemDeleted
.subscribe(onNext: { print("delete item at index path \($0) from your model.")})
.disposed(by: bag)
如果您不是在寻找 Rx 解决方案,那么您的问题是:
推荐阅读
- haskell - 在简单的 http 获取示例中找不到模块“Network.HTTP”
- javascript - 如何避免在 ASP.NET MVC 5 中获得纯 JSON 结果
- django - 我还能尝试在 Django 中调试“ModuleNotFoundError”吗?
- asp.net - 从永久链接 URL 下载文件,而不是直接的 exe url
- sql - 如何从Oracle sql中的电子邮件地址获取名字,姓氏,提供者
- cmake - 没有使用ROS顶层CMakelists.txt,如何给所有子项目的cmake默认值?
- reactjs - 返回值形式如何使用钩子
- sql - LEFT JOIN 上的 SQLITE 列未填充
- c# - 丢弃 DoAwait() VS Task.Run(() => DoAwait()) 有什么区别
- python - 如何使用 requests 库发送和接收请求?