快速展开可扩展的tabelview部分

时间:2019-03-07 13:52:59

标签: swift

嘿,我正在开发一个应用程序,其中有一个带有自定义单元格区域的表格视图。 所以我的任务是在单击部分时显示单元格,并在再次单击时隐藏。 我不知道在tableview的didselect方法中写什么

1 个答案:

答案 0 :(得分:-1)

只需删除该节的所有单元格,即可隐藏单元格。例如,我在标题视图中添加了一个按钮,该按钮触发此函数,该按钮将删除当前节的所有单元格:

 func toggleView() {
    // SHOW
    if toggleStatut == false {
        toggleStatut = true
        // Get indexPath of my element in my second section
        var indexPaths = self.tableView.indexPathsForVisibleRows
        indexPaths = indexPaths?.filter({ (indexPath) -> Bool in
            return indexPath.section == 1
        })
        self.tableView.beginUpdates()
        self.tableView.deleteRows(at: indexPaths ?? [], with: .fade)
        self.tableView.endUpdates()
    } 
    // HIDE
    else {
        toggleStatut = false
        let indexPaths = (0..<elements.count).map { IndexPath(row: $0, section: 1) }
        self.tableView.beginUpdates()
        self.tableView.insertRows(at: indexPaths , with: .fade)
        self.tableView.endUpdates()

    }
}

因此无需使用didSelect方法。相反,您可以添加标头将实现的协议来调用上述函数