我有一个定制的UITableViewRowAction设置和工作。我唯一无法解决的问题是,一旦选择了一个操作,如何取消UITableViewRowAction。我肯定我错过了一些很明显的东西。下面是我当前的设置:
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [AnyObject]? {
var moreRowAction = UITableViewRowAction(style: UITableViewRowActionStyle.Default, title: "In", handler:{action, indexpath in
//Some code to execute here
});
moreRowAction.backgroundColor = UIColor(red: 0.298, green: 0.851, blue: 0.3922, alpha: 1.0)
return [moreRowAction];
}谢谢你的建议。
发布于 2014-10-04 22:46:08
关闭处理程序中的操作,该操作在操作被点击时被调用。文献资料对处理程序的描述如下
当用户点击与此操作关联的按钮时要执行的块。UIKit生成您提供的块的副本。当用户选择此对象表示的操作时,UIKit将在应用程序的主线程上执行处理程序块。
独立地,我想您可以将表视图editing属性设置为false。
tableView.setEditing(false, animated: true)发布于 2015-11-19 18:44:12
这对我来说很管用:
tableView.editing = NO;
发布于 2016-11-21 17:45:47
打电话给tableView.setEditing(false, animated: true)似乎只在某些时候起作用。最终,表视图似乎进入了不再显示编辑操作的状态。
我发现简单地调用tableView.reloadRows(at: [indexPath], with: .none)更可靠。
https://stackoverflow.com/questions/26197826
复制相似问题