iOS 10和iOS 11安全区域

时间:2019-05-09 12:37:09

标签: ios objective-c

enter image description here我有一个用Objective-C编写的iPad应用,该应用在UIVew的底部具有工具栏。

在ios10中,该条形图位于屏幕的绝对底部,然后我将图像,流等放置在该条形图之上,并一直延伸到该条形图的正上方。

在ios11中,条形图似乎比绝对底部大约高20像素,因此,我的图像侵占了条形图的顶部。

我相信这是ios11中引入的“安全区域”。

有什么办法可以解决这个问题,并且在ios10和ios11 / 12中具有相同的功能吗?

编辑:在所附的图像中,左边的模拟器是ios12,右边的模拟器是ios10。

您会看到ios12栏下方有黑色,图像被切入工具栏。在正确的模拟器中,情况并非如此。没有修改代码...

1 个答案:

答案 0 :(得分:1)

是的,您可以通过将底部约束0直接设置为Superview而不是将底部约束设置为安全区域布局来实现。如果您使用的是Xcode ans iOS的旧版本,那么它将是Bottom Layout Guide而不是Bottom Safe Area

enter image description here

在上图中,您可以在底部看到空间。

enter image description here

这就是您想要的。但现在我建议检查一次。如果您使用的是Xcode 10及更高版本,请启用设备挡板并chk发生了什么事。

enter image description here

现在您可以在上面的图片中看到所有东西都弄乱了。因此,最好重新设计布局并使圆变小,这样圆图像就不会在工具栏后面被剪切。而且,如果您将来需要进行任何更改,则只需要很少的更改即可。