期间,虽然搞懂了标准的tabbar的写法
但是进入子页面后,则tab bar还是显示,想要去掉:
搜:
swift hide tab bar
参考:
自己折腾代码,看到个:
self.tabBarController?.hidesBottomBarWhenPushed
去试试
import UIKit class ConversationViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { override func viewDidLoad() { super.viewDidLoad() //print("self.tabBarController?.hidesBottomBarWhenPushed=\(self.tabBarController?.hidesBottomBarWhenPushed)") self.tabBarController?.hidesBottomBarWhenPushed = true
结果没生效:
点击进入该页面后,还是没有隐藏tab bar
看了解释:
提到的是“toolbar”而不是tab bar。。。
参考:
结果:
class ConversationViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { override func viewDidLoad() { super.viewDidLoad() self.tabBarController?.tabBar.hidden = true
但是导致:
主页面中的tabBar都被隐藏了。。。
而不是所希望的:
当点击进入子页面时,再隐藏掉tabBar。
后来发现是自己搞错了:
应该是放在另外一个VC里面的:
class MessageTableViewController: UIViewController, UITableViewDataSource, UITableViewDelegate { override func viewDidLoad() { super.viewDidLoad() self.tabBarController?.tabBar.hidden = true
效果达到了:
主界面中tabBar是显示的,而点击进入子页面MessageTableViewController,tabBar隐藏:
[总结]
想要一个ViewController中隐藏tabBar的话,则可以在其viewDidLoad加上:
self.tabBarController?.tabBar.hidden = true
即可。
转载请注明:在路上 » [已解决]swift中显示UINavigationController的子页面内隐藏TabBar