Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone popViewController不删除UINavigationBar项_Iphone_Ios_Uinavigationcontroller_Uinavigationbar_Popviewcontroller - Fatal编程技术网

Iphone popViewController不删除UINavigationBar项

Iphone popViewController不删除UINavigationBar项,iphone,ios,uinavigationcontroller,uinavigationbar,popviewcontroller,Iphone,Ios,Uinavigationcontroller,Uinavigationbar,Popviewcontroller,我有一个奇怪的问题。我在这里和互联网上找到了一些技巧,但我什么也解决不了我的问题。下面是发生的情况: 我有一个带有9项的选项卡栏导航。它们都是UINavigationItems。在某些情况下,我将其中一个视图控制器替换为另一个默认视图控制器 为此,我使用popViewController和pushViewController。这很好地工作,但我有一个问题,UINavigationBar与此不同步。这样做的效果是,我看到了正确的视图,但当我单击后退按钮时,它会移动到一个空的导航栏项,从那里我返回到

我有一个奇怪的问题。我在这里和互联网上找到了一些技巧,但我什么也解决不了我的问题。下面是发生的情况:

我有一个带有9项的选项卡栏导航。它们都是UINavigationItems。在某些情况下,我将其中一个视图控制器替换为另一个默认视图控制器

为此,我使用popViewController和pushViewController。这很好地工作,但我有一个问题,UINavigationBar与此不同步。这样做的效果是,我看到了正确的视图,但当我单击后退按钮时,它会移动到一个空的导航栏项,从那里我返回到rootViewController,例如

这是我的密码:


- (void)viewWillAppear:(BOOL)animated { 
  if ([[myAppDelegate bcUser] userLoggedIn]) {
    // user is logged in
    MyDataLoggedInViewController *loggedInViewController = [[[MyDataLoggedInViewController alloc] initWithNibName:@"MyDataLoggedInView" bundle:nil] autorelease];
    UINavigationController *navController = self.navigationController;
    [[self retain] autorelease];

    [navController popViewControllerAnimated:YES];
    [navController pushViewController:loggedInViewController animated:YES];
  } 
}
我希望有人能帮忙。我尝试了我发现的一切,但没有任何帮助-/

谢谢并致以最良好的祝愿, 托马斯

尝试设置:

[navController popViewControllerAnimated:NO];
[navController pushViewController:loggedInViewController animated:NO];

因为您很可能正在等待动画完成。

或者您需要重置UINavigationController的根视图。不幸的是,这没有帮助。我已经试过了,运气不好。重置rootView意味着什么?navigationController的rootView是位于导航堆栈底部位置0处的viewController。