点击按钮时,app用户可以在两个角色(用户和经理)之间切换。
在我的tabBarViewController
viewDidLoad
方法
if userRole == "manager" {
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let managerHomeViewController = (mainStoryboard.instantiateViewController(withIdentifier: "ManagerHome")) as! UINavigationController
let managerProfileViewController = (mainStoryboard.instantiateViewController(withIdentifier: "ManagerProfile")) as! UINavigationController
self.viewControllers?.replaceSubrange(0...1, with: [managerHomeViewController,managerProfileViewController])
}
在加载视图时更改前两个标签栏项目。
在anotherViewController
中,用户点按按钮即可更改角色,
MainTabBarViewController().aboveFunction()
运行此行后,标签栏项目不会更新。通过强制关闭应用并重新启动它,只能更新为新的标签栏项目。更新后如何立即重新加载标签栏项目?
答案 0 :(得分:0)
我没有找到重新加载的解决方案,但我最终在故事板中使用两个标签栏控制器来为用户和经理提供两个视图。
点按按钮更改角色
let homeViewController = (self.storyboard!.instantiateViewController(withIdentifier: "ManagerHomeTabBar")) as UIViewController
self.present(homeViewController, animated: false, completion: nil)
切换到正确的标签栏视图。