使用 UIPreviewAction 删除项目后如何重新加载 UITableView
How to reload UITableView after deleting an item using UIPreviewAction
我正在使用 UIPreviewAction 从 Core Data 数据源中删除一个项目。 Peek 操作是从使用相同数据源的 UITableView 上的单元格发起的。
我的问题是,由于 UIPreviewAction 的代码是窥视视图控制器代码的一部分,我应该如何向原始 UITableViewController 发信号通知它应该重新加载其数据源?
使用委托调用原始 UITableViewController 上的删除方法。
这可以通过多种方式完成,您可以像这样使用通知中心:
在您要删除的位置使用此代码触发通知
NSNotificationCenter.defaultCenter().postNotification(NSNotification(name: "reloadTable", object: nil))
接收器操作将在您的控制器中,table 在 viewdidload 中查看 exists.Write 这一行并且不要忘记在 deinit 函数中删除观察者
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(ViewController.reloadTable), name: "reloadTable", object: nil)
最后函数
func reloadTable() {
tableView.reloadData()
}
我正在使用 UIPreviewAction 从 Core Data 数据源中删除一个项目。 Peek 操作是从使用相同数据源的 UITableView 上的单元格发起的。
我的问题是,由于 UIPreviewAction 的代码是窥视视图控制器代码的一部分,我应该如何向原始 UITableViewController 发信号通知它应该重新加载其数据源?
使用委托调用原始 UITableViewController 上的删除方法。
这可以通过多种方式完成,您可以像这样使用通知中心:
在您要删除的位置使用此代码触发通知
NSNotificationCenter.defaultCenter().postNotification(NSNotification(name: "reloadTable", object: nil))
接收器操作将在您的控制器中,table 在 viewdidload 中查看 exists.Write 这一行并且不要忘记在 deinit 函数中删除观察者
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(ViewController.reloadTable), name: "reloadTable", object: nil)
最后函数
func reloadTable() {
tableView.reloadData()
}