我想做的事情:将选项卡栏放在它所属的iPhone X显示屏的底部,并将导航栏放在显示屏的顶部。

我一直在尝试完成我认为在情节提要中使用“安全区域”将标签栏放在iPhone X显示屏底部附近的简单任务。我缺少基本的东西。

我已经阅读了很多有关如何执行此操作的文章including this one。它包括一个标签栏控件场景的屏幕截图,如下所示:
ios - 为Tab Bar Controller和iPhone X实现安全区域-LMLPHP

但是如本文所述,我无法在Tab Bar Controller中创建视图以将我的Tab Bar项目放置在中。据我了解,我将使用应包含标签栏项目的视图的安全区域。但是它不允许我将视图放置在Controller视图之外的任何地方。我尝试使用“嵌入式”-但所有选项均为灰色。

导航控制器将导航栏移动到显示屏顶部的操作也是如此。

有趣的是IB在正确的位置渲染它,但是在我的设备上,选项卡栏位于应有的位置上方(导航栏位于下方)。

ios - 为Tab Bar Controller和iPhone X实现安全区域-LMLPHP

我将“打开位置”设置为“最新Xcode(9.0)”,并在场景的“界面生成器文档”中设置了iOS 11.1版,并选中了“使用安全区域布局指南”。我没有为我使用任何自定义类标签栏控制器或标签栏。我使用的是XCode 9.3和iOS 11.3.1

我想念的最简单的事情是什么?提前致谢。

ios - 为Tab Bar Controller和iPhone X实现安全区域-LMLPHP ios - 为Tab Bar Controller和iPhone X实现安全区域-LMLPHP

最佳答案

本文介绍了在使用自定义导航栏或自定义标签栏时如何调整应用程序。

如果您使用的是标准导航栏或选项卡栏,则必须确保将其顶部或底部(取决于元素)约束连接到安全区域布局指南 super 视图而不是。 UIKit确保这些元素在iPhone X设备上的顶部或底部以正确的间距显示。请查看this screenshot进行澄清。

10-08 03:18