UITableView编辑模式

2016-07-31  本文已影响265人  我是花老虎

UITableView有两种模式,普通模式和编辑模式。在编辑模式下可以对cell进行排序、删除、插入等等。

  1. 如何进入编辑模式
    调用tableView的setEditing(editing: Bool, animated: Bool)方法。

The content view of a UITableViewCell object is the default superview for content displayed by the cell. If you want to customize cells by simply adding additional views, you should add them to the content view so they will be positioned appropriately as the cell transitions into and out of editing mode

    func tableView(tableView: UITableView, editingStyleForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCellEditingStyle {
        return .Delete
    }
    func tableView(tableView: UITableView, titleForDeleteConfirmationButtonForRowAtIndexPath indexPath: NSIndexPath) -> String? {
        return "我删除啦"
    }

这时,cell右侧又多出来一个部分,叫做UITableViewCellDeleteConfirmtionView,不同的删除提示语,长度不一样。

确认删除态的cell
删除
    func tableView(tableView: UITableView, editingStyleForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCellEditingStyle {
        return .Insert
    }
    func tableView(tableView: UITableView, moveRowAtIndexPath sourceIndexPath: NSIndexPath, toIndexPath destinationIndexPath: NSIndexPath) {
    //do something    
    }

实现这个方法就好,即使什么都不做


        tableView?.allowsMultipleSelectionDuringEditing = true
        tableView?.tintColor = UIColor.blackColor()
多选及小对勾
    func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {   
    }

这个方法里不能调用setEditing(_:animated:)方法

上一篇下一篇

猜你喜欢

热点阅读