我在 XCode 4.1 上为 iOs 4.3 开发应用程序,但昨天我已使用 iOs 5.0 SDK 将其更新到 XCode 4.2。
当我在 iphone 4.3 模拟器中运行我的应用程序时,它运行得很好。 我决定在iphone 5.0模拟器上测试一下,出现了以下问题:
- 我有一个 View Controller “MyViewController”,以及一个自定义类,该类实现了一些添加到“MyViewController”的自定义组件“MyCustomComponent”。 MyCustomComponent 中有一个按钮,当它触及 MyViewController 中的 peformSelector 时,它会导致 EXC_BAD 崩溃。相同的代码在 iPhone 4.3 模拟器上运行得非常完美。有任何想法吗?
- 自定义导航栏 - 根本不起作用。我正在尝试设置自定义背景来实现 UINavigationBar 并覆盖 drawRect,但它不会在 ios 5 中显示。
最佳答案
好的,所以我想我已经弄清楚了。当我重新安装 xcode 时,我的控制台关闭了,所以没有看到任何错误消息。现在打开它,出现错误
Terminating app due to uncaught exception 'UIViewControllerHierarchyInconsistency'
问题是我使用将 MyCustomComponent 添加到 MyViewController
self.view=myCustomComponent.view
什么时候我应该做
[self.view addSubview:myCustomCoponent.view]
这在 ios 4.3 中不是问题,但在 ios 5 中似乎是个大问题。
关于iphone - PerformSelector 抛出 UIViewControllerHierarchyInconsistency 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7752159/