如何控制UITableView tableHeaderView的宽度?

How to control the width of UITableView tableHeaderView?

提问人:Kerwin Qiu 提问时间:10/27/2023 更新时间:10/27/2023 访问量:33

问:

我将 tableHeaderView 框架的宽度设置为 0,高度为 60。但我不知道为什么标题宽度会与表格匹配。帮助!! 以及如何将宽度设置为小于 tableview? 所以我有一个想法,我们可以使用一个父视图来匹配标题视图,它会匹配宽度,然后我们可以添加子视图,这是我们想要显示的真实子视图,这个子视图的宽度是可以控制的。喜欢这个: override func viewDidLoad() { super.viewDidLoad() tableView.tableHeaderView = .init(frame: .init(x: 0, y: 0, width: 0, height: 60.0)) }

        let sectionHeader = UIView(frame: .init(x: 0, y: 0, width: 0, height: 50))
        sectionHeader.backgroundColor = .yellow
        let label = UIView(frame: .init(x: 0, y: 0, width: 40, height: 40))
        label.backgroundColor = .brown
        sectionHeader.addSubview(label)
        return sectionHeader

这是对的吗?

我想知道现象的原理

iOS Swift iPhone UITableView

评论

1赞 DonMag 10/27/2023
如您所见,将 的宽度设置为 tableView 的宽度。当您更改表格的宽度时(例如在设备旋转时),标题视图将自动调整为新宽度。所以,是的......应使用子视图和约束来布局标题视图的内容.tableHeaderView

答: 暂无答案