如何阻止TableViewController命中状态栏?

时间:2015-12-22 15:34:22

标签: uitableview interface-builder swift2 xcode7

我有一个从对象库拖动的新TableViewController。它现在填充了数据。当我运行应用程序时,tableview将一直进入状态栏。我认为这不正常。

但我也没有看到在TableViewController场景上调整tableview大小的方法。任何人都有一些建议我应该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以在导航控制器中嵌入TableViewController:

1. Select the TableViewController in the storyboard
2. Xcode top bar: Editor -> Embed in -> Navigation controller

如果您不想在导航中嵌入TableViewController。控制,您可以在TableViewController类的viewDidLoad中向表视图添加填充:

// ... in TableViewController.swift
override func viewDidLoad() {
    super.viewDidLoad()

    // add top padding to table view   
    let myTopPadding: CGFloat = 50
    self.tableView.contentInset = UIEdgeInsetsMake(myTopPadding, 0, 0, 0);

    // ...
}

请注意,使用此解决方案,您的数据仍然会被点击"滚动时的状态栏,但不是在输入表格视图时。当子类化UITableViewController时,这显然是难以避免的问题(没有导航控制器):

如果你想在滚动时也想要填充,那么根据上面的线程,你最好通过view controller -> insert table view -> ...创建自己的表,而不是使用完成的UITableViewController"包" 。