使用HIDESBOTTOMBARWHENPUSHED显示POP上的标签栏



我想仅在任何一个孩子上都显示在父控制器上。

我正在按下:

childViewController?.hidesBottomBarWhenPushed = true
self.navigationController?.pushViewController(childViewController!, animated: true)

现在,当我通过单击"向后"按钮导航时,在父母身上显示agin。

,但是如果我以这种编程方式进行相同的操作:

childViewController?.hidesBottomBarWhenPushed = true
self.navigationController?.popToRootViewController(animated: true)
//or
self.navigationController?.popViewController(animated: true)

然后,未在父级上再次显示Tab栏。

我已经尝试了许多解决方案;

解决方案1:用儿童编写此代码

- (void)viewWillAppear:(BOOL)animated { 
    self.hidesBottomBarWhenPushed = true 
}
- (void)viewWillDisappear:(BOOL)animated {
    self.hidesBottomBarWhenPushed = false 
}

解决方案2:在推送上编写此代码

childViewController?.hidesBottomBarWhenPushed = true
self.navigationController?.pushViewController(childViewController!, animated: true)
childViewController?.hidesBottomBarWhenPushed = false

它都没有起作用。如果我使用导航栏返回按钮返回,一切正常。但是,如果我 popViewControllerpopToRootViewController,则它不起作用。

使用:Xcode 8.3.2,Swift 3

请帮助我。预先感谢您。

在要隐藏的控制器中使用这种方式:

override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) {
    super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
    self.hidesBottomBarWhenPushed = true
}

相关内容

  • 没有找到相关文章

最新更新