发布结束时的问题
问题:我在UISplitViewController
嵌入UITabBarController
时发现了UITabBarController
的奇怪行为。该设置非常简单,无需任何编码即可重现。创建一个基于StoryBoard的应用程序并将UISplitViewController
拖到StoryBoard上,并使其成为初始视图控制器。然后将ITabBarController
拖到棋盘上,并将其作为U UISplitViewControllers
的项目。将UINavigationController
详细信息视图控制器嵌入到UISplitViewController
中。最后,将主视图控制器和详细视图控制器的背景颜色设置为显着的颜色。
步骤1:在可以同时显示主人和详细信息的设备上运行应用程序(例如iPad或大屏幕iPhone)。您应该注意到主人没有在条形下延伸,而是UISplitViewController
的背景照亮了。
第2步:将屏幕旋转为纵向,以便主人折叠。从侧面滑入以显示主人。此时,两个导航栏都显示正确的背景颜色。
第3步:将屏幕旋转回横向。现在细节具有UISplitViewController
的背景,并且主人显示正确的颜色。
结果:
UITabBarController
问题:
答案 0 :(得分:0)
5个月后,仍然没有解决方案。此外,当我在开发另一个应用程序时再次遇到此问题时,我发现2015年的这篇旧帖子也有同样的问题:Navigation bar for split view controller is darker when inside a tab bar controller
所以我猜Apple并没有打算修改自己的控制器,而且开发人员也搞砸了。我们可以在底部显示UITabBar,同时在上面显示具有适当半透明UINavigationBars的UISplitViewController的唯一方法是实现我们自己的容器视图控制器。
我终于解决了这个问题,使用了一个UITabBar,UITabBar固定在底部,同时使用UIViewController包含API来显示/隐藏我的UISplitViewControllers。