【发布时间】:2021-09-01 22:38:55
【问题描述】:
当我使用自定义表格视图创建表格视图时,导航栏和表格视图顶部之间有空白空间。
我添加了与 view.topAnchor 相同的约束。 我不知道为什么会这样。
如何将表格视图剪辑到顶部?
提前谢谢你。
【问题讨论】:
标签: ios swift iphone xcode uitableview
当我使用自定义表格视图创建表格视图时,导航栏和表格视图顶部之间有空白空间。
我添加了与 view.topAnchor 相同的约束。 我不知道为什么会这样。
如何将表格视图剪辑到顶部?
提前谢谢你。
【问题讨论】:
标签: ios swift iphone xcode uitableview
确保您没有添加任何标题。
如果您使用的是 nib/storyboard,请查看 ViewController 设计 -> 选择 tableview -> 将 Footer height 和 Header height 设置为 0。
如果您使用的是代码,请查看此示例,了解如何使用代码删除标头 - How to hide first section header in UITableView (grouped style)
默认情况下,它需要 28,这就是它在顶部显示空白的原因。
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 0
}
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
return 0
}
设置上述代码并确保委托方法将被调用。
【讨论】:
tableView.tableHeaderView = UIView(frame: CGRect(x: 0.0, y: 0.0, width: tableView.bounds.size.width, height: 0.01))
试试这个技巧,在视图中添加一个空白 UIView... In viewDidLoad:
view.addSubview(UIView())
我忽略了原因,但这会破坏您的 UIScrollView 和导航栏之间的链接...这可能会解决您的问题。
【讨论】: