pushViewController无法在iOS 5中运行,但在iOS6中运行良好

时间:2013-05-10 06:33:59

标签: ios ios5 ios6 uinavigationcontroller

我有一个推动新视图控制器的导航控制器。它在iOS6中运行良好,但在iOS5中运行不正常。顺便说一句,我在iPhone模拟器上运行。

我的代码如下所示:

myViewController *newView = [[myViewController alloc] initWithNibName:@"myViewController"
                                                                          bundle:nil];
[[self navigationController] pushViewController:newView animated:YES];

也试过这个:

myViewController *newView = [[myViewController alloc] initWithNibName:@"myViewController"
                                                                          bundle:[NSBundle mainBundle]];
[[self navigationController] pushViewController:newView animated:YES];

不工作。

尝试了解决方案:pushViewController Not Working on iOS 5 (OK on iOS 6)

也没有显示新的视图控制器,需要一些指导。感谢。

3 个答案:

答案 0 :(得分:2)

您是否可以尝试使用此行来测试您的nib文件是否存在问题。

 myViewController *newView = [[myViewController alloc] init];
[[self navigationController] pushViewController:newView animated:YES];

- (void)viewDidLoad中写self.view.backgroundColor = [UIColor redColor];

只是为了测试你的viewcontroller是否在推动。 如果您能够使用此方法推送View Controller。然后您的nib文件可能存在一些问题。

答案 1 :(得分:1)

您使用的是storyboard还是xib?如果您使用的是故事板,这可以帮助您initwithnibname method in storyboard

答案 2 :(得分:0)

我有类似的问题。通过删除View中的'AutoLayout'约束来解决问题。Just uncheck Autolayout