TableView选择多行

时间:2017-06-23 11:52:40

标签: ios tableview

我正在使用此代码选择tableView

中的特定行
tableView.selectRow(at: indexPath, animated: true, scrollPosition: .none)

但是如何选择多行,或者将所有行设置为选中?

在我返回每个单元格之前,我尝试cellForRowAt indexPath使用isSelected = trueisHighlighted = true,但它没有用。

3 个答案:

答案 0 :(得分:1)

tableView.isediting = true
tableView.allowsMultipleSelection = true

答案 1 :(得分:0)

确保您的表格允许多项选择,然后......

    // select ALL rows in Section 0
    for i in 0..<tableView.numberOfRows(inSection: 0) {
        let iPath = IndexPath(item: i, section: 0)
        tableView.selectRow(at: iPath, animated: false, scrollPosition: .none)
    }

    // select ALL VISIBLE rows
    for iPath in tableView.indexPathsForVisibleRows! {
        tableView.selectRow(at: iPath, animated: false, scrollPosition: .none)
    }

    // select rows 2, 4 and 6
    for i in [2, 4, 6] {
        let iPath = IndexPath(item: i, section: 0)
        tableView.selectRow(at: iPath, animated: false, scrollPosition: .none)
    }

答案 2 :(得分:-1)

只需维护一系列选定行并在cellForRowAtIndexPath中检查它们,然后返回单元格。