如何在编辑/重新排序模式下初始化表视图?

时间:2015-04-09 20:31:04

标签: ios uitableview swift xcode6

我希望在我的视图中有一个表格视图,以便始终可以重新订购。我无法弄清楚这一点。我的表视图中有行,但无法显示重新排序句柄。

对于表格视图原型单元格,我确保在缩进中检查> “显示重新订购控件”,但这没有做任何事情。

这就是我全班的样子:

class ViewController: UIViewController {
    ...

    @IBOutlet var currentTable: UITableView!

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.

        currentTable.editing = true
    }

    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return unitCategories.count
    }

    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "Cell")
        cell.textLabel?.text = "\(unitCategories[indexPath.row])"
        return cell
    }

    /*func tableView(tableView: UITableView, editingStyleForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCellEditingStyle {
        return UITableViewCellEditingStyle.None
    }*/
}

有人可以帮助我指出正确的方向吗? enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

您需要实现这两种方法才能显示重新排序控件

func tableView(tableView: UITableView, moveRowAtIndexPath sourceIndexPath: NSIndexPath, toIndexPath destinationIndexPath: NSIndexPath) {

}

func tableView(tableView: UITableView, canMoveRowAtIndexPath indexPath: NSIndexPath) -> Bool {
    return true
}

如头文件中所述,

 func tableView(tableView: UITableView, canMoveRowAtIndexPath indexPath: NSIndexPath) -> Bool
  

允许重新排序附件视图可选择显示为a   特别的一排。默认情况下,只有在显示时才会显示重新排序控件   数据源实现:

-tableView:moveRowAtIndexPath:toIndexPath: