向 TableViewController 添加边距
Posted
技术标签:
【中文标题】向 TableViewController 添加边距【英文标题】:Adding margin to TableViewController 【发布时间】:2014-06-10 20:59:00 【问题描述】:我正在试验 Xcode 6 和 Swift,但在 Interface Builder 上遇到了一点问题。
我通过拖动带有 TableView 的 TableViewController 创建了一个新场景,但是当在模拟器上运行它时,顶部单元格离顶部太近了,它几乎触及了中心的日期和运营商徽标。
由于这似乎是一个根视图,我无法添加约束,我也找不到调整方法,以便我有一个灵活/响应不同屏幕尺寸的边距。
【问题讨论】:
【参考方案1】:您不想尝试将表格限制在状态栏下方,因为这会导致滚动视图的内容在超过 20pt 标记时神奇地消失。相反,让它继续全屏显示并简单地设置表格的 contentInset 属性 (More info in documentation)。
这将使表格像往常一样滚动,内容从屏幕顶部移出,并增加了停留在状态栏下方的功能。
let statusBarHeight = UIApplication.sharedApplication().statusBarFrame.height
tableView.contentInset = UIEdgeInsetsMake(statusBarHeight, 0.0, 0.0, 0.0)
【讨论】:
对,我猜它需要以编程方式完成,而不是通过 Interface Builder? @iQ。很遗憾。在 Interface Builder 中,您可以调整滚动条的插图,但不能调整滚动视图(表格视图)本身的插图。以上是关于向 TableViewController 添加边距的主要内容,如果未能解决你的问题,请参考以下文章
使用 NavigationController 将视图添加到 TableViewController
我可以向自定义快餐栏添加边距(扩展 BaseTransientBottomBar)吗?