我升级到x code 4.6 SDK 6.1现在
[self.tabBarController presentViewController:loginViewController animated:YES completion:nil];
正在线上了。
此代码适用于6.0及以上6.0模拟器,但现在6.0和6.1崩溃,而5.1及以下模拟器仍然正常运行。
基本上在我的应用程序中,我会调用一个标签栏,然后运行一个登录屏幕,直到它被解雇。
编辑:我没有在任何地方使用AutoLayout。
答案 0 :(得分:0)
知道了我的印象是在我的xib名称中添加~iPad / ~iPhone适用于一个通用应用程序,可以选择自动使用哪个xib。在5.1模拟器上,它确实在6和更高版本上没有。
所以这是正确的代码。
LoginViewController *loginViewController;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController_iPhone" bundle:nil];
viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController_iPhone" bundle:nil];
loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController~iPhone" bundle:nil];
} else {
viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController_iPad" bundle:nil];
viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController_iPad" bundle:nil];
loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController~iPad" bundle:nil];
}