0

我实现了 editActionsForRowAtIndexPath 和 commitEditingStyle 滑动正在工作,但 UITableViewCell 上没有显示任何操作按钮

func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [AnyObject]? {  

    let deleteAction = UITableViewRowAction(style: UITableViewRowActionStyle.Normal, title: "Delete" , handler: { (action:UITableViewRowAction!, indexPath:NSIndexPath!) -> Void in  
          // I did some work here  
    })  

    return [deleteAction]  
}  

有谁知道如何在滑动时显示操作按钮?(目前,单元格滑动,但其后面是白色背景,没有操作按钮。单击此白色背景也不会引起任何类型的响应)

注意:我在另一个 ViewController 中实现了 editActionsForRowAtIndexPath 并且它可以工作。(动作按钮同时出现并响应点击事件)

4

3 回答 3

1

我遇到了同样的问题,就我而言,我意识到我的自定义单元格对于表格视图来说太宽了。我注意到了这一点,因为没有显示配件。在 iPad 模拟器上运行它后,我看到了按钮。

于 2015-08-24T10:50:06.073 回答
0

该事件应该在commitEditingStyle这里使用滑动按钮操作

func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
        if (editingStyle == UITableViewCellEditingStyle.Delete) {
            // handle delete (by removing the data from your array and updating the tableview)
        }
}
于 2015-06-24T11:49:49.053 回答
0

commitEditingStyle 为空,因为它是滑动所必需的。editActionsForRowAtIndexPath 已实现,这适用于一个 viewController 但不适用于另一个

代码如下

 func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {

    }


func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [AnyObject]? {

    let deleteAction = UITableViewRowAction(style: UITableViewRowActionStyle.Normal, title: "Delete" , handler: { (action:UITableViewRowAction!, indexPath:NSIndexPath!) -> Void in
        //some code here
    })


    return [deleteAction]
}
于 2015-06-24T12:11:29.737 回答