如何使可扩展单元格不扩展以及如何对didSelectRow进行编码?

时间:2019-09-07 11:04:41

标签: uitableview expandablelistview collapse

我的侧面菜单控制器中有一个项目列表。我不希望一切都扩大。以及如何编码didSelectRow。

我在线上看到了本教程,但是所有单元格都在扩展。

 override func viewDidLoad() {
    super.viewDidLoad() 

 tableViewData = [cellData(opened: false, title: "Name", sectionData: ["Cell 1", "Cell 2", "Cell 3"]), // I dont want to expand
                     cellData(opened: false, title: "Setting", sectionData: ["Setting 1", "Setting 2", "Setting 3"]),
                     cellData(opened: false, title: "About", sectionData: ["Cell 1", "Cell 2", "Cell 3"]), // I dont want to expand
                     cellData(opened: false, title: "Logout", sectionData: ["Cell 1", "Cell 2", "Cell 3"])] // I dont want to expand
}

override func numberOfSections(in tableView: UITableView) -> Int {
    return tableViewData.count
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    if tableViewData[section].opened == true {
        return tableViewData[section].sectionData.count
    } else {
        return 1
}
}

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    if indexPath.row == 0 {
        guard let cell = tableView.dequeueReusableCell(withIdentifier: "cell") else { return UITableViewCell()}
        cell.textLabel?.text = tableViewData[indexPath.section].title
        return cell
    } else {
        guard let cell = tableView.dequeueReusableCell(withIdentifier: "cell") else { return UITableViewCell()}
        cell.textLabel?.text = tableViewData[indexPath.section].sectionData[indexPath.row]
        return cell
    }
}

我只想展开“设置”。以及如何在didSelectRow中调出其他单元格。

0 个答案:

没有答案