我有一个自定义的UITableViewCell,其中所有内容都正确显示,我可以向左滑动每一行。在iPad上,一切正常。但是,在任何型号的iPhone上,不显示下面代码中定义的两个编辑操作,而是显示任何内容。该行只是向左滑动,没有任何编辑按钮的位置。
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [AnyObject]? {
let thing = things![indexPath.row]
var editAction = UITableViewRowAction(style: .Default, title: "Edit") { (action, indexPath) -> Void in
tableView.editing = false
self.editThing = thing
self.performSegueWithIdentifier("thingEdit", sender: self)
}
editAction.backgroundColor = UIColor.grayColor()
var deleteAction = UITableViewRowAction(style: .Normal, title: "Delete") { (action, indexPath) -> Void in
tableView.editing = false
self.deleteThing(indexPath)
}
deleteAction.backgroundColor = UIColor.redColor()
return [editAction, deleteAction]
}
func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
}
我在其他地方使用的代码基本相同,并且在所有设备上都能正常工作。我已经确认故事板中工作表和非工作表的定义之间没有明显的差异。