更新
我自己解决了这个问题。我把它放在这里供进一步参考。我发现我在 MainWindow.xib 中将 rootViewController of window 连接到 tabBarController ,而不是在 didFinishLaunchingWithOptions :
[self.window setRootViewController:self.tabBarController];
删除MainWindow中的链接后一切正常。
我猜它可能会触发第一个标签的视图,该标签有一个非初始化的数组。
无论如何,我仍然不知道为什么在ios4下它没问题。
感谢。
更新
感谢您的评论和回答,它在之前进入didFinishLaunchingWithOptions。但是我仍然在这里粘贴didFinishLaunchingWithOptions以查看我是否遗漏了任何内容。
ps:它在ios 4.x
上运作完美- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
return YES;
}
您好我遇到了一个在didFinishLaunchingWithOptions之前发生的奇怪问题,所以我不知道如何处理它。任何人都可以提供任何暗示吗?谢谢你。
2012-03-10 18:03:12.642[95579:17003] Unresolved error (null), (null)
2012-03-10 18:03:12.644[95579:17003] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array'
*** First throw call stack:
(0x1a07052 0x1fbbd0a 0x19f3db8 0x16c57 0x19d15 0x973e 0x8665 0xa1a64e 0xa19c1c 0xa4056d 0xa2ad47 0xa41441 0xa4145d 0xa4145d 0xa414f9 0x981d65 0x981dac 0xb7274e 0xb74010 0x95414a 0x954461 0x9537c0 0x962743 0x9631f8 0x956aa9 0x28f4fa9 0x19db1c5 0x1940022 0x193e90a 0x193ddb4 0x193dccb 0x9532a7 0x954a9b 0x2690 0x1eb5)
terminate called throwing an exceptionCurrent language: auto; currently objective-c
答案 0 :(得分:1)
首先检查数组是否为空:
if ([array count] > 0) {
/* do something with your array */
}
如果您需要查看数组内部,请设置断点并在调试时查看内部。