iOS 11和iPhone X:嵌入UITabBarController时UINavigationBar的工具栏间距不正确

apa*_*ual 28 cocoa-touch ios ios11 iphone-x

我在iPhone X模拟器上测试最新的iOS 11时遇到了烦人的问题.

我有一个UITabBarController和每个标签内部有一个UINavigationController,每个UINavigationBar都定义了一个底部的toolBar(setToolbarHidden:),默认情况下它们显示在底部,就在tabBar上方.

到目前为止它一直运行良好,似乎在上传的iPhone 8和8 Plus型号中也能正常工作,但在iPhone X上,toolBar和tabBar之间存在差距.我的猜测是toolBar没有意识到它显示在tabBar中,然后将容纳空间留在底部.

我想解决它的唯一方法是使用自定义工具栏并自己显示/动画而不是使用默认值UINavigationBar,但我想听听其他选项:)

  • 这就是它在iPhone 8上的外观.
  • 这是iPhone X上的问题.

在此输入图像描述 在此输入图像描述

gre*_*reg 4

我将其归档为 radr://problem/34421298,该文件作为 radr://problem/34462371 的重复项而关闭。然而,在 iOS 11.2 的 Xcode 9.2 (9C32c) 最新测试版中,这个问题似乎得到了修复。这是我的应用程序在每个设备的模拟器中运行的示例,其间没有任何更改。

iOS 11.1 和 11.2 下的导航栏工具栏

这并不是真正解决您的问题,除了一些耐心可能会解决它而不需要诉诸 UI 技巧。我的假设是 iOS 11.2 将在今年年底前发布,因为它需要支持 HomePod。