首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解散UITableViewRowAction

解散UITableViewRowAction
EN

Stack Overflow用户
提问于 2014-10-04 22:33:25
回答 4查看 10.5K关注 0票数 37

我有一个定制的UITableViewRowAction设置和工作。我唯一无法解决的问题是,一旦选择了一个操作,如何取消UITableViewRowAction。我肯定我错过了一些很明显的东西。下面是我当前的设置:

代码语言:javascript
复制
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];
}

谢谢你的建议。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-10-04 22:46:08

关闭处理程序中的操作,该操作在操作被点击时被调用。文献资料对处理程序的描述如下

当用户点击与此操作关联的按钮时要执行的块。UIKit生成您提供的块的副本。当用户选择此对象表示的操作时,UIKit将在应用程序的主线程上执行处理程序块。

独立地,我想您可以将表视图editing属性设置为false。

代码语言:javascript
复制
tableView.setEditing(false, animated: true)
票数 69
EN

Stack Overflow用户

发布于 2015-11-19 18:44:12

这对我来说很管用:

tableView.editing = NO;

票数 6
EN

Stack Overflow用户

发布于 2016-11-21 17:45:47

打电话给tableView.setEditing(false, animated: true)似乎只在某些时候起作用。最终,表视图似乎进入了不再显示编辑操作的状态。

我发现简单地调用tableView.reloadRows(at: [indexPath], with: .none)更可靠。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26197826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档