我有一个UITabBarController
有4个标签,前两个是“程序”和“锻炼”。
在第一个标签的视图中,用户可以选择他们想要执行的程序,然后点击“执行锻炼”,这将把他们带到锻炼屏幕。
我的目标是将锻炼屏幕显示为与程序选择相同的导航控制器的一部分,但是我想更新UITabBarController
以反映我们现在在锻炼屏幕上的事实。
问题在于,如果我打电话
UITabBarController *tabController = (UITabBarController*)self.navigationController.parentViewController;
[tabController setSelectedIndex:1];
这将在新WorkoutViewController
内打开UINavigationController
,而不是使用旧版UINavigationController
。我意识到由于我的storyboard
而发生了两个UINavigationControllers
问题,但如果我没有两个单独的selectedIndex
,则TabView不会始终保持最佳状态(它在第一次推动后消失。)
如何更新UITabBarController
上的UINavigationController
而不强制它加载新的{{1}}?
答案 0 :(得分:0)
我认为你应该断开你的Workout控制器并使用storybord id推送这个控制器而不是来自程序控制器,但更改所选的tab选项索引将此控制器推送到第二个导航cotroller