介绍
上节我们说到了如何实现单元格删除的功能,但是很多时候我们需要更多复杂的功能,而不仅仅是删除这样的简单操作,例如QQ好友列表中的置顶等功能,这时候我们就需要进行自定义RowAction
实现
要自定义RowAction,我们需要实现
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]?
注意:实现这个方法会使得自带的删除功能失效,需要重写
首先创建一个UITableViewRowAction
利用其构造器
public convenience init(style: UITableViewRowActionStyle, title: String?, handler: (UITableViewRowAction, NSIndexPath) -> Void)
func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [UITableViewRowAction]? {
let shareAction = UITableViewRowAction(style: .Normal, title: "Share") { (action, indexPath) -> Void in
let alert = UIAlertController(title: "Share", message: "taped Share Action", preferredStyle: .Alert)
let cancel = UIAlertAction(title: "OK", style: .Cancel, handler: nil)
alert.addAction(cancel)
self.presentViewController(alert, animated: true, completion: nil)
}
return [shareAction]
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。