在iPhoneX上设置UITabBarController的ViewControllers会错放标签

时间:2017-11-07 15:37:46

标签: ios swift uitabbarcontroller iphone-x

我们使用故事板设置我们的UITabBarController,但使用UITabBarController的loadView()中的标签过滤相关的ViewControllers:

if let filteredVCs = self.viewControllers?.filter({$0.tabBarItem.tag != hiddenTag }) {
    self.setViewControllers(filteredVCs, animated: false)
}

在iPhone X之前,它一直正常工作。它会导致错误的标签:

enter image description here

没有这段代码,它工作正常:

enter image description here

我们已经尝试在UITabBar上setNeedLayout()在更改viewControllers之后重新启动它,但它不起作用。

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

实际上我混淆了一些东西而且导致问题的loadView()没有调用代码。代码运行时UITabBar没有显示但隐藏在modalview后面,这导致了问题。我现在调用loadView()中的代码,它按预期工作。