UITabBarController 内的视图控制器的不同 UINavigatonBar buttons/title
Different UINavigatonBar buttons/title for viewcontrollers inside UITabBarController
我正在开发一个应用程序,该应用程序使用当前嵌入在 UINavigationController 中的 UITabBarController(带有 3 children 视图控制器)。
我希望每个 child vc 在它们的导航栏上显示不同的东西(不同的标题视图、按钮等),类似于 yik yak 的界面(那些 vc也在标签栏控制器中):
现在,导航栏在切换选项卡之间无法正常工作,而是每次我在选项卡之间切换时,显示的视图控制器导航栏设置会覆盖前一个(如果尚未设置)。如果有,它只显示当前的导航栏设置。
抽象地说,我的应用程序结构是这样的:
UINavigationController -> UITabBarController -> UIViewController #1
-> UIViewController #2
-> UIViewController #3
我正在 viewDidLoad
中设置每个视图控制器的导航栏设置
示例:
- (void)viewDidLoad {
self.tabBarController.navigationItem.titleView = _segmentedControl;
self.tabBarController.navigationItem.titleView.tintColor = FlatBlue;
}
我应该更改什么才能获得所需的效果?在不同的地方设置导航栏设置?将每个 child vc 嵌入到另一个 uinavigationcontroller 中?
需要一些帮助,但在任何地方都找不到任何资源!
谢谢
如评论中所述,解决方案是切换导航栏设置和逻辑:
viewDidLoad
至
viewWillAppear
我正在开发一个应用程序,该应用程序使用当前嵌入在 UINavigationController 中的 UITabBarController(带有 3 children 视图控制器)。
我希望每个 child vc 在它们的导航栏上显示不同的东西(不同的标题视图、按钮等),类似于 yik yak 的界面(那些 vc也在标签栏控制器中):
现在,导航栏在切换选项卡之间无法正常工作,而是每次我在选项卡之间切换时,显示的视图控制器导航栏设置会覆盖前一个(如果尚未设置)。如果有,它只显示当前的导航栏设置。
抽象地说,我的应用程序结构是这样的:
UINavigationController -> UITabBarController -> UIViewController #1
-> UIViewController #2
-> UIViewController #3
我正在 viewDidLoad
示例:
- (void)viewDidLoad {
self.tabBarController.navigationItem.titleView = _segmentedControl;
self.tabBarController.navigationItem.titleView.tintColor = FlatBlue;
}
我应该更改什么才能获得所需的效果?在不同的地方设置导航栏设置?将每个 child vc 嵌入到另一个 uinavigationcontroller 中?
需要一些帮助,但在任何地方都找不到任何资源!
谢谢
如评论中所述,解决方案是切换导航栏设置和逻辑:
viewDidLoad
至
viewWillAppear