2011-12-22 39 views
0

我使用选项卡视图模板在Xcode 4.2中启动了一个项目。在应用程序委托中,我通过代码添加了第三个选项卡,就像第一个和第二个选项卡。然后我用一个nib文件创建了第三个视图控制器类。
当我运行这个应用程序,我看到所有三个选项卡,但是当我点击第三个选项卡时,它崩溃。 我注意到第一个和第二个笔尖文件底部有一个黑条(可能代表标签栏)的视图,但我创建的新的第三个笔尖文件缺乏它。任何想法如何使第三个标签工作?如何在xcode 4.2中添加新选项卡

谢谢

这是我如何添加第三个视图控制器。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions 
{ 
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
// Override point for customization after application launch. 
UIViewController *viewController1, *viewController2, *viewController3; 
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { 
    viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController_iPhone" bundle:nil]; 
    viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController_iPhone" bundle:nil]; 
    viewController3 = [[ThirdViewController alloc] initWithNibName:@"ThirdViewController_iPhone" bundle:nil]; 
} else { 
    viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController_iPad" bundle:nil]; 
    viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController_iPad" bundle:nil]; 
} 
self.tabBarController = [[UITabBarController alloc] init]; 
self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, viewController3, nil]; 
self.window.rootViewController = self.tabBarController; 
[self.window makeKeyAndVisible]; 
return YES; 
} 
+0

可能你需要照顾内存。并向我们​​展示一些代码。另外还会打印崩溃消息。 – 2011-12-22 19:06:24

+0

输出中没有生成错误。输出屏幕上的最后一个单词是:当前语言:自动;目前的Objective-C(gdb) – saman01 2011-12-22 19:24:19

回答

0

在标签栏控制器中,确保选项卡的视图控制器的类与您创建的视图控制器类相同。

也检查日志,它可能会有一个非常丰富的消息,为你为什么它坠毁。

编辑

没关系,你逝去在viewController3未初始化的视图控制器。将所有这些初始值设置为零。

+0

所有类都是相同的。并且日志文件是空的。它只包含初始化消息。 – saman01 2011-12-22 19:31:40

+0

我其实看着你的代码,看到我认为真正的问题... – 2011-12-22 21:58:57

相关问题