找不到类型" UITableViewRowAction"的初始值设定项。

时间:2015-09-08 17:27:32

标签: ios swift uitableviewrowaction

即使我输入了UITableViewRowAction的正确声明

,为什么还要继续向我显示此消息?
var shareAction = UITableViewRowAction(style: UITableViewRowActionStyle.Default, title: "Share",
        handler: { (action:UITableViewRowAction!, indexPath: NSIndexPath) -> Void in

1 个答案:

答案 0 :(得分:1)

Xcode 6.4文档说两个参数都应该是隐式解包的选项。

var shareAction = UITableViewRowAction(style: UITableViewRowActionStyle.Default, title: "Share",
        handler: { (action: UITableViewRowAction!, indexPath: NSIndexPath!) -> Void in

或在Xcode 7中,两个参数都不是可选的。

var shareAction = UITableViewRowAction(style: UITableViewRowActionStyle.Default, title: "Share",
        handler: { (action: UITableViewRowAction, indexPath: NSIndexPath) -> Void in

无论哪种方式,你都应该尝试

var shareAction = UITableViewRowAction(style: .Default, title: "Share") {
    action, indexPath in
    /* ... */
}

这是一种更加敏捷的方式。