具有多个部分的表格视图

Posted

技术标签:

【中文标题】具有多个部分的表格视图【英文标题】:tableview with multiple sections 【发布时间】:2018-03-01 01:43:20 【问题描述】:

我在下面附上了我的代码。

在执行时,我只得到一个部分作为输出,但它应该在表格视图中返回 3 个部分。我不知道该怎么办。

import UIKit

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource 
    @IBOutlet weak var tableView: UITableView!

    var itemsInSections: Array<Array<String>> = [["1A", "1B", "1C"], ["2A", "2B"], ["3A", "3B", "3C", "3D", "3E"]]
    var sections: Array<String> = ["Section 1", "Section 2", "Section 3"]

    override func viewDidLoad() 
        super.viewDidLoad()

        self.tableView.dataSource = self
        self.tableView.delegate = self
    

    func numberOfSectionsInTableView(tableView: UITableView) -> Int 
        return self.sections.count
    

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
        return self.itemsInSections[section].count
    

    func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? 
        return self.sections[section]
    

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
        let text = self.itemsInSections[indexPath.section][indexPath.row]

        cell.textLabel!.text = text

        return cell
    

【问题讨论】:

【参考方案1】:

你的方法不对

替换旧的 Swift 语法

func numberOfSectionsInTableView(tableView: UITableView) -> Int 
    return self.sections.count

使用新的 Swift 语法

func numberOfSections(in tableView: UITableView) -> Int 
    return self.sections.count

【讨论】:

是的,我同意这一点。您正在为 numberOfSections 方法使用旧的 swift 语法

以上是关于具有多个部分的表格视图的主要内容,如果未能解决你的问题,请参考以下文章

在 Xcode Storyboard 中编辑具有多个部分的静态分组表视图

SWIFT:在具有多个部分的表视图中显示字典时,无法将具有标识符单元格错误的单元格出列

将表格视图转换为具有部分

如何在目标c中删除表格视图中的多个部分?

Swift - 处理表格视图多个部分的自定义复选标记按钮状态

如何在表格视图的标题中添加多个单元格(不是部分标题)?