【发布时间】:2019-01-23 06:25:50
【问题描述】:
我有一个 UITabBarController 和四个 TabBaritem,我在每个 ViewConrollers 中都有 leftMenu。左侧菜单选择导致呈现每个 ChildViewController。所以我使用 NavigationController 来呈现每个子视图控制器,同时点击左侧菜单行。
但问题是,选定的TabBarItem 不会改变,而新选定的TabBarItem 呈现在同一个ViewController 中,即我选择了ChildViewContrller 的控制器。
例如:如果我在 secVC 中并选择左侧菜单导航到 firstVC 它在 sec tabBarItem.and 出现 firstVc,如果我在一些功能之后 我再次点击 sec tabBarItem 它将显示 firstVC。但是我有 在 First tabBarItem 中显示 FirstVc
我的左侧菜单选择代码是,
if sender.tag == 0 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "HomeVC")as? HomeVC
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 1 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "TileDetailsVC")as? TileDetailsVC
navVc?.leftMenuPrdctId = 1
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 2 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "OrderHistoryVC")as? OrderHistoryVC
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 3 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "TileDetailsVC")as? TileDetailsVC
navVc?.leftMenuPrdctId = 3
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 5 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "SettingsVC")as! SettingsVC
self.navigationController?.pushViewController(navVc, animated: true)
}
请任何人帮助我了解如何在点击左侧菜单行时呈现特定的 tabBarItem。
【问题讨论】:
标签: ios swift uitabbarcontroller uitabbar uitabbaritem