【问题标题】:How to add separator to footer?如何在页脚中添加分隔符?
【发布时间】:2018-07-05 23:08:33
【问题描述】:

我有页脚功能。 我想在这个单元格的顶部显示分隔符并将其隐藏在底部。

override func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {

        let footer = UITableViewCell(frame: CGRect(x: 0, y: 0, width: tableView.frame.width, height: 50))


        let label = UILabel(frame: CGRect(x: 0, y: 0, width: tableView.frame.width, height: 50))

        label.text = "HELLO"
        label.textAlignment = .center
        label.textColor = UIColor.lightGray



        footer.addSubview(label)

        tableView.tableFooterView = footer

        return footer

    }

如何以编程方式打开分隔符?

【问题讨论】:

  • 添加一个高度设置为 1 且 backgroundColor 设置为您想要的分隔符颜色的 UIView 怎么样?
  • @dr_barto 有趣的想法
  • @dr_barto 但是当我在代码中更改高度时,它仍然具有静态页脚高度
  • 我的意思是,您应该创建一个新的 UIView,将其高度设置为 1,并将其作为子视图添加到您的页脚视图中。
  • @dr_barto 我这样做了。它仍然有页脚的高度

标签: ios swift uitableview footer separator


【解决方案1】:

您应该在代码中更改一些内容:

  • 将页脚视图包裹在UITableViewCell 中是没有意义的,您可以直接使用UILabel
  • 您要覆盖的tableView(_:viewForFooterInSection:) 方法旨在为表中的每个部分提供页脚;但是,您还设置了表格视图的tableFooterView 属性,该属性用于设置表格的单个“全局”页脚(表格最底部的几个,无论有多少它包含的部分)。所以同一个视图会在两个地方使用,这是不允许的。选择一个。

解决这两个问题后,您可以将分隔符添加到您的页脚标签as described here。请注意,如今,布局视图的首选方式不是手动设置位置和大小,而是使用 AutoLayout 约束(我建议您阅读一个很好的教程),但首先链接的解决方案应该适合您。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-08
    • 1970-01-01
    • 2013-08-20
    • 2019-09-08
    • 2019-07-08
    • 2023-03-25
    相关资源
    最近更新 更多