我正在为iO 4.3开发我的XCode 4.1应用程序,但昨天我用iOs 5.0 SDK将它更新为XCode 4.2。
当我在iphone 4.3模拟器中运行我的应用程序时,它运行良好。 我决定在iphone 5.0模拟器上测试它,并出现以下问题:
答案 0 :(得分:6)
好的,所以我猜我想出来了。我的控制台关闭,当我重新安装xcode时,所以没有看到任何错误消息。现在打开它,并收到错误
由于未捕获的异常而终止应用 'UIViewControllerHierarchyInconsistency'
问题是我使用
将MyCustomComponent添加到MyViewControllerself.view=myCustomComponent.view
我应该做什么
[self.view addSubview:myCustomCoponent.view]
这不是ios 4.3中的一个问题,但在ios 5中似乎是一个大问题。
答案 1 :(得分:0)
我在同样的问题上挣扎。
当您创建新的Master-Detail应用程序(没有故事板)时,您可以从AppDelegate.m中看到以下代码。
MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
“不要依赖MainWindow” 从您自己的ViewController开始,并将其设置为委托。 并且不要忘记从MainWindow.xib取消链接视图,否则视图将被调用2次。
答案 2 :(得分:-1)
EXC_BAD_ACCESS表示该对象不存在。尝试NSLog-ging正在执行performSelector方法的对象。
编辑:如果在尝试登录时崩溃,它已被解除分配。检查是否正确保留了对象!
如果是有效对象,请尝试:
if(![obj respondsToSelector:@selector(mySelector:)]){NSLog(@"no such method!");}