我在我的应用程序中动态添加了tabbar,它有3tabs。 现在这些3tabs打开特定的视图控制器: -
第一个标签打开: - 信息页面
打开第二个标签: - 一些列表页面
第三个标签打开: - 设置页面
现在出现选择第3个标签设置页面 在设置页面中,我有一个按钮,可以将应用程序导航到某个详细设置页面。 现在详细设置页面点击更改按钮它将更改选项卡的viewcontrollers。: -
第一个标签打开: - 信息页面
打开第二个标签:-Map Page(而不是某个列表页面)
第三个标签打开: - 设置页面**
这就是问题所在。我没有任何线索来改变已经设置过一次的第二个标签的viewcontroller。
我在viewwillappear()函数中动态添加了tabbar someviewcontoller.m filelike: -
tabBarController = [[UITabBarController alloc] init];
[tabBarController setViewControllers:[NSArray arrayWithObjects:nav1,nav2,nav3,nil]];
[self.navigationController pushViewController:tabBarController animated:YES];
[nav1 release]; nav1 = nil;
[nav2 release]; nav2 = nil;
[nav3 release]; nav3 = nil;
[tabBarController release];
tabBarController = nil;
答案 0 :(得分:2)
试试这个! nav1,nav2,nav3是navigationController的对象。您必须使用ViewController传入每个navigationcontroller。所以你需要在nav2中更改viewController。将nav2的viewcontroller的对象从Some List页面的View Controller更改为Map Page View Controller的对象。
更改视图对象Controller将动态更改Tab按钮。希望它可以帮助你。
谢谢:)