状态栏整个视图向下移动 - iOS 11

问题描述 投票:23回答:4

我最近升级到了Xcode 9-beta和iOS 11.当我做了并推动我的项目播放时,我的所有视图都被状态栏向下推了大约20px,而不是状态栏直接在我的视图之上。我的合作伙伴,拥有iOS 10,没有这个问题。我附上了截图供您参考。

有人可以提供一些建议吗?任何帮助将非常感激。非常感谢提前。

干杯,根据enter image description here

ios swift uiview uikit ios11
4个回答
36
投票

快速回答

您可能想将contentInsetAdjustmentBehaviortableView对象的scrollView设置为.never

if #available(iOS 11.0, *) {
    tableView.contentInsetAdjustmentBehavior = .never
}

要么

if #available(iOS 11.0, *) {
    scrollView.contentInsetAdjustmentBehavior = .never
}

17
投票

我遇到了同样的问题,经过HOURS搜索,我终于找到了问题所在。

Xcode 9具有安全区域的新概念,默认情况下,故事板现在在所有视图的顶部添加了一个安全区域。

如果选择ViewController的根视图并选择Size Inspector,您将看到一个复选框,如image所示

取消选中它,这个顶部填充将消失。


8
投票
if (@available(iOS 11.0, *)) {
        _tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}

1
投票

如果使用UITableViewStyle.grouped - 35px的差距仍然存在,即使你添加tableView.contentInsetAdjustmentBehavior = .never。尝试将UITableViewStyle更改为plain。这为我解决了一个问题。

© www.soinside.com 2019 - 2024. All rights reserved.