bei*_*ein 8 iphone uiviewcontroller uinavigationcontroller
我有一个令人难以置信的令人沮丧的问题似乎是一个错误,但我很难相信没有其他人遇到过这个问题.我的应用程序的根视图控制器是一个UITabBarController,其中每个选项卡都是UINavigationController.一切都很好.
现在我来到一个我想编辑堆栈的地方,所以我重新排列当前导航控制器的viewControllers然后执行:
[self.navigationController setViewControllers:newViewControllers animated:YES];
Run Code Online (Sandbox Code Playgroud)
堆栈被正确弹出/推送到顶视图控制器,但导航栏不会更新到当前视图控制器,并且似乎保持与popCon之前的viewController完全一样.如果我做:
[self.navigationController popToViewController:someViewController animated:YES];
Run Code Online (Sandbox Code Playgroud)
一切都很完美.有没有人曾经遇到过这个?有解决方法吗?我做错了什么?
Que*_* G. 10
我遇到了同样的问题,似乎Apple没有纠正这个错误,因此该线程的选定答案似乎是不正确的.我设法使用此错误报告纠正此问题,如Anurag的评论结合Scott Pfeil的评论.
这是代码:
navController.navigationBarHidden = YES;
NSArray* viewControllers = navController.viewControllers;
UIViewController* currentController = [viewControllers objectAtIndex:viewControllers.count-1];
NSArray *controllers = [NSArray arrayWithObjects: viewController , currentController , nil];
[navController setViewControllers:controllers animated:NO];
navController.navigationBarHidden = NO;
Run Code Online (Sandbox Code Playgroud)
我在viewDidLoad中调用此代码,currentController我所做的只是替换以前的控制器viewController.
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
10166 次 |
| 最近记录: |