列表后显示的 Swift 3 UITableView 部分

Posted

技术标签:

【中文标题】列表后显示的 Swift 3 UITableView 部分【英文标题】:Swift 3 UITableView sections showing after the list 【发布时间】:2017-05-06 16:15:10 【问题描述】:

我正在尝试使用 swift 3 UITableViewController 创建产品列表,但这些部分显示在产品列表之后。一定有什么我错过了,在任何地方都找不到

这是一个简化的代码

let data = [["0,0", "0,1", "0,2"], ["1,0", "1,1", "1,2"], ["2,0", "2,1", "2,2"],  ["3,0", "3,1", "3,2"]]

override func numberOfSections(in tableView: UITableView) -> Int 
    return data.count//productCategoriesSections.count


override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
    return data[section].count//productCategories[section].count



 override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 
    let cell = tableView.dequeueReusableCell(withIdentifier: "defaultCategoryCell", for: indexPath) as! CategoryDefaultTableViewCell
    cell.titleTextView.text = data[indexPath.section][indexPath.row]
    return cell
 

override func tableView(_ tableView: UITableView, titleForFooterInSection section: Int) -> String? 
    return "Section \(section)"

screenshot

【问题讨论】:

titleForFooterInSection vs. titleForHeaderInSection 谢谢@vadian 【参考方案1】:

这是因为你使用了错误的回调。

使用override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? 代替override func tableView(_ tableView: UITableView, titleForFooterInSection section: Int) -> String?

前者会将文本作为标题放置在该部分的上方。后者将其放在底部。

【讨论】:

我怎么看不到呢?谢谢

以上是关于列表后显示的 Swift 3 UITableView 部分的主要内容,如果未能解决你的问题,请参考以下文章

使用Swift IOS获取推文

使用 swift 3 访问 JSON 中的值

在swift中打印图像后的数字列表是什么

如何将完整的 UserDefaults 列表放入 tableview - Swift 3

JSON 结果在 Swift 中的 Tableview 中显示结果列表,而不是每个单元格中的每个结果(附图片)[关闭]

如何使用关系 Swift 3 显示 UITableView