微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从第一个UITabBarController视图中删除导航栏?

如何解决如何从第一个UITabBarController视图中删除导航栏?

我有一个具有登录注册屏幕的应用程序,当点击“登录”按钮或“注册”按钮时,它们将推到tabbarcontroller。但是,一旦标签栏加载,第一个屏幕顶部就会有一个导航栏。如果使用底部导航栏选择下一个屏幕,则导航栏将消失,并且所有屏幕都是相同的。如果再回到第一个屏幕,则顶部的导航栏不存在。我已为在所有视图上隐藏的导航栏编写了代码,但仍使用后退按钮显示代码。我设法删除了后退按钮,因为通过单击它,它可以返回到登录注册屏幕。我尝试将根视图控制器更改为UITabBarController,但是第一个屏幕上的导航栏在那里,当我导航到下一个屏幕并返回时,顶部导航栏消失了。很长时间以来一直试图将其删除,但无法弄清楚该如何做。抱歉,这是一个简单容易的问题。

解决方法

如果要在视图控制器上显示导航栏,请使用ViewWillAppear方法:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    self.navigationController?.setNavigationBarHidden(false,animated: true)
}

要在按下另一个视图控制器后隐藏该导航栏,只需将其隐藏即可:

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)
    self.navigationController?.setNavigationBarHidden(true,animated: true)
}

如果它能按预期工作,请在此处发表评论。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。