【问题标题】:Make UITableView ignore Safe Area让 UITableView 忽略安全区域
【发布时间】:2019-12-17 11:16:33
【问题描述】:

我在ViewController 中有一个TableView。 我将 TableView 拉伸到 View SuperMargings(带约束)并禁用了所有 SafeArea Inset 选项,但当我运行我的项目时,我的 TableView 仍在 SafeArea 之下。

如何让我的TableView 在带缺口的 iPhone 上全高?

【问题讨论】:

  • 你是如何设置自动布局的?在情节提要中或通过编程方式使用约束?

标签: swift tableview uiedgeinsets safeareaview


【解决方案1】:

如果您已经将 tableView 固定到它的超级视图(而不是 safeArea),但 tableView 仍然尊重 safeAreaUIScrollView 中有属性 contentInsetAdjustmentBehaviorUITableView 是 @ 的子类987654328@ 我们知道)从 iOS 11 开始。

此属性是 UIScrollView.ContentInsetAdjustmentBehavior 枚举,有 4 个选项。 您需要将.never 设置为contentInsetAdjustmentBehavior

【讨论】:

    【解决方案2】:

    any 视图的作用是将表视图的底部约束与根(或父)视图的底部锚点(而不是 SafeArea)相关联。

    这可以在故事板编辑器中完成,双击右侧检查器中的约束并将第一个项目锚点从 SafeArea 更改为 Superview(或任何想要的视图)。

    如果需要,您可以随意设置边缘插图(如果对顶部锚点应用相同的过程,以避免内容部分隐藏在圆角框架角或凹口后面)

    【讨论】:

    • 你能在故事板中显示视图层次结构吗(同样适用于以编程方式完成)?
    猜你喜欢
    • 2022-08-19
    • 1970-01-01
    • 2021-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多