1、是否允许tableview的cell能不能编辑
override func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool
{
return true
}
2、设置原始的删除按钮的title
override func tableView(tableView: UITableView, titleForDeleteConfirmationButtonForRowAtIndexPath indexPath: NSIndexPath) -> String?
{
return "删除"
}
3、点击删除按钮触发的函数。 需要判断是否是删除的类型。
override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath)
{
if editingStyle == UITableViewCellEditingStyle.Delete {
let dic = itemArry.objectAtIndex(indexPath.row) as! NSDictionary
//进行删除后的网络请求接口
deleteCell(dic.objectForKey("Q_ID") as! String)
//删除数组中的数据
itemArry.removeObjectAtIndex(indexPath.row)
//刷新tableview
tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Automatic)
}
}
4、显示图片在下面的函数中进行。
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let btn = UIButton()
//左滑显示设置好图片的按钮。
btn.frame = CGRectMake(CGRectGetWidth(UIScreen.mainScreen().bounds), 0, 55, 110)
btn.setImage(UIImage(named: "deleteImage"), forState: UIControlState.Normal)
btn.backgroundColor = UIColor.whiteColor()
//在cell中添加一个view
let cusview = UIView()
cusview.frame = CGRectMake(CGRectGetWidth(UIScreen.mainScreen().bounds), 0, 300, 110)
cusview.backgroundColor = UIColor.whiteColor()
cell.contentView.addSubview(cusview)
cell.contentView.addSubview(btn)
}