交换presentModalViewController和pushViewController

时间:2010-04-03 01:23:15

标签: iphone sdk uinavigationcontroller pushviewcontroller

我正在使用示例程序中显示的示例ViewController作为presentModalViewController。但是,我想在UIViewController上使用pushViewController。问题是,当我切换到pushViewController时,ViewController没有正确显示。调用ViewController中的函数,但我没有看到任何内容。我改回到presentModalViewController,一切正常。

问题是我需要做些什么来使pushViewController工作?

FCVC *fcVC;  
NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"fcVC" 
                                               owner:self     
                                             options:nil];  
fcVC = [array objectAtIndex:0];  

一个。 [self presentModalViewController:fcVC animated:YES]; //“工作”

B. [self.navigationController pushViewController:fcVC animated:YES]; //“不起作用

2 个答案:

答案 0 :(得分:1)

您是否实际设置了UINavigationController? “self”应该是一个在UINavigationController中加载的viewController。

答案 1 :(得分:0)

要在基于视图的应用程序中创建NavigationController,您必须在委托类中设置NavigationController。

喜欢这个

In delegate .h class

  MyViewController *viewController;

在委托.m班

- (void)applicationDidFinishLaunching:(UIApplication *)application {    

UINavigationController *nvcontrol =[[UINavigationController alloc] initWithRootViewController:viewController];

[window addSubview:nvcontrol.view];

[window makeKeyAndVisible];

}

此处“MyViewController”应由viewcontroller替换。

所有最好的。