swift - 表格 View 偏移

标签 swift uitableview uipageviewcontroller

通过在 pageViewController 中实现 tableView,tableView 与其显示的内容不一致。对此最好的解决办法是什么?

enter image description here

最佳答案

如果您的 TableView 是 View Controller View 中的第一个 View ,则 View Controller 将设置其 contentInset 值以将内容移动到导航栏下方。 IB 中有一个设置:

Adjust Insets

但是现在您的 TableView 不是 View 上的第一个对象,它不再获得这种自动好处。所以需要你自己用代码来完成。可能类似于这样:

override func viewDidLoad() {
    super.viewDidLoad()
    tableView.contentInset = UIEdgeInsets(top: 64, left: 0, bottom: 20, right: 0)
}

64 并不是所有应用程序的确切数字。例如,在手机的横向模式下,您的导航栏可能会更薄。因此,您可能想在此处实际使用 View Controller 的顶部布局指南值。

请注意,我在底部添加了 20 以便为页面指示器留出空间。这假设 TableView 将显示在其后面。您也可以在运行时测量该对象。

您也可以通过将 TableView 设置为层次结构中最后面的 View 来解决该问题。

关于swift - 表格 View 偏移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35090406/

相关文章:

ios - 两个方法调用之间的区别

swift - 当我快速按下按钮并使用文本字段中的一些文本时,我可以将新单元格添加到表格 View 吗?

ios - 解析 JSON objectAtIndexPath

ios - UIPageViewController 未在单击按钮时完成转换

ios - 暂时禁用 PageViewController 上的滑动

ios - 不在 set updateConstraints 中时,UIStackView 间距会打破约束

ios - RxSwift : tap a button to do a request with Alamofire, 如何让它工作?

swift - 没有 GameScene.swift 或 GameScene.sks 文件

ios - 适合 UITableViewCell 中的 textLabel

ios - (Swift)需要逐步了解如何在 View Controller 之间滑动