在我的应用程序中,我通过设置hidesBottomBarWhenPushed
的{{1}}属性来隐藏tabbar。我不确定这个行为的设计与否,当我调用UIViewController
来弹出所有视图控制器堆栈时,如果我之后推送了相同的视图控制器,则tabbar没有正确显示。即使我在调用popToRootViewController
之后设置isHidden
属性,也尝试显示tabbar,但它也不起作用。奇怪的是,在tabbar消失之后,我推了相同的视图控制器,当我试图通过使用手势弹出(滑动到弹出)来弹出视图控制器(而不是popToRootViewController)时,我可以看到tabbar。虽然过渡完成后它就消失了。
仅供参考,这是产生这种行为的一步一步。
popToRootViewController
为真)hidesBottomBarWhenPushed
从导航控制器弹出所有视图控制器
4通过在tabbarController popToRootViewController
来更改选项卡索引
selectedIndex
属性如何详细地显示/隐藏tabbar?
答案 0 :(得分:1)
我会在我的应用中讨论这个问题。
对于每个网页,我都会修改self.navigationController?.navigationBar.isHidden
和self.tabBarController?.tabBar.isHidden = false
,以保证{{1}中 tabBar 和 navigationBar 的状态}}
viewWillAppear
navigationBar 和 tabBar 可以在您推送新状态或弹出旧视图时保持状态与上一个视图控制器的连接。因此,它将让我们在每个视图控制器中设置控制并确保其状态如我所愿。