【发布时间】:2013-11-17 11:54:41
【问题描述】:
我刚刚安装了带有 OS X Mavericks 的 Xcode 5.0.2。在 Xcode 4.5 上运行最初为 iOS 5.1 构建的项目时,出现“NSInternalInconsistencyException”错误,如下所示:
*** Assertion failure in -[UIStoryboardEmbedSegue perform],
/SourceCache/UIKit_Sim/UIKit-2903.23/UIStoryboardEmbedSegue.m:19
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException',
reason: 'There are unexpected subviews in the container view.
Perhaps the embed segue has already fired once or
a subview was added programmatically?'
我所做的是解决显示的与已弃用 API 相关的任何警告,但我仍然面临这个问题。
我的问题是:
- 如何确定是哪个情节提要场景导致了该问题?
- 另外,有没有推荐的方法来解决这个问题?
注意:我注意到我在 xCode 5 中使用 iOS 7 作为基础 SDK,而它曾经是 xCode 4.5 上的 iOS 6,但两者的部署目标都设置为 6.0。将 Xcode 5 中的部署目标更改为其他 SDK 版本并不能解决问题。
注意 2: 我注意到在 iOS 6 的 iPhone 模拟器上的 Xcode 4.5 上运行并且 Base SDK 设置为 iOS 6.0 时不会发生此问题。
故事板屏幕截图 Table View Controller 有一个容器视图,其中包含一个“嵌入 segue”到视图控制器。
【问题讨论】:
-
打开应用或切换到新视图时是否抛出异常?故事板的屏幕截图(至少是最初的 VC)可能会有所帮助。
-
打开应用时抛出异常。我会尽快添加截图。感谢您的回复。
-
初始VC中是否有多个顶层视图。
-
@Wain 截图已添加。
-
我只是遇到了类似的问题。你让它工作了吗?也许问题是 segue 需要一个 UIViewController 而不是容器内的 TableView?
标签: ios iphone objective-c xcode uistoryboard