Iphone pushViewController不显示带选项卡栏和导航栏的UIView/Nib

Iphone pushViewController不显示带选项卡栏和导航栏的UIView/Nib,iphone,uinavigationcontroller,Iphone,Uinavigationcontroller,我对objective c比较陌生,但不懂编程,我一直在使用iphone应用程序 我创建了一个基于导航的应用程序,它同时具有导航栏和选项卡栏控制器。我将选项卡栏设置为根控制器。我能够在每个选项卡之间切换,而不会出现任何问题,切换到各种UIView和UITableView 我的问题是,在我从TabBarController调用的其中一个UITableView中,didSelectRowAtIndexPath函数应该显示一个新的UIView。下面的代码没有给出任何错误,运行正常,但没有显示新的Nib

我对objective c比较陌生,但不懂编程,我一直在使用iphone应用程序

我创建了一个基于导航的应用程序,它同时具有导航栏和选项卡栏控制器。我将选项卡栏设置为根控制器。我能够在每个选项卡之间切换,而不会出现任何问题,切换到各种UIView和UITableView

我的问题是,在我从TabBarController调用的其中一个UITableView中,didSelectRowAtIndexPath函数应该显示一个新的UIView。下面的代码没有给出任何错误,运行正常,但没有显示新的Nib

if(newViewController == nil) {  
NSLog(@"yes nil");  
BookViewController *aNewViewController = [[BookViewController alloc] initWithNibName:@"BookOptionView" bundle:nil];   
self.newViewController = aNewViewController;     
[aNewViewController release];    
} 
BookAppDelegate *delegate = (BookAppDelegate *)[[UIApplication sharedApplication] delegate]; 
[delegate.appNavBar pushViewController:newViewController animated:YES];
现在,当我执行下面的操作时,它工作得很好,但是它去掉了导航和制表符,我假设这是一个模式调用,而不是按视图控制器

你知道为什么我不能正确地推送视图控制器吗?在我的应用程序委托文件中,我声明了一个名为appNavBar的AppNavBarController对象(继承自UINavigationController)


任何帮助都将不胜感激

如果您想使用导航控制器将视图显示为模态视图,可以按如下操作:

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:myViewController];
[self presentModalViewController:navigationController animated:YES]; 

另外,据我所见,您的appdelegate中有您的navcontroller。因此,我猜您正在为所有选项卡视图使用全局导航控制器,理想情况下不应该如此。您的导航控制器应位于选项卡控制器内,最好在不同选项卡中具有不同的导航控制器

我真的找到了答案。我不确定我是否理解上面的代码为什么不起作用,但以下内容满足了我的要求:
[self.navigationController pushViewController:newControllerName动画:是]

谢谢你的回复。您的代码看起来将完成与我提供的代码相同的任务,在这里,它将显示一个新的UIView,而无需使用全局导航栏和全局选项卡栏。
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:myViewController];
[self presentModalViewController:navigationController animated:YES];