由 TabBarViewController 和 IBOutlets 引起的 splashboardd 意外退出

splashboardd quit unexpectedly caused by TabBarViewController and IBOutlets

我正在 运行安装一个直接进入 TabBarViewController 的应用程序。

问题是每次我 运行 应用程序都会收到崩溃警告,让我知道 splashboardd 意外退出。然后应用程序 运行 正常,但每次我 运行 应用程序时我都会遇到同样的问题。这是错误的一部分:

"Application Specific Information: *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[ setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key scrollHeight.' terminating with uncaught exception of type NSException abort() called CoreSimulator 117.5.4 - Device: iPhone 6 - Runtime: iOS 8.2 (12D508) - DeviceType: iPhone 6 "

我现在意识到只有当第一个选项卡包含带有任何类型出口的 viewcontroller 时才会发生这种情况,所以当我将一个选项卡(连接到没有出口的视图控制器)移动到第一个位置,或者如果我删除第一个 VC 中的插座,错误将停止...

有没有人经历过类似的事情?由于模拟器和设备中的 App 运行s,我是否应该担心此错误消息?

编辑: 澄清一下,应用程序 运行 在收到消息后完全正常,我在系统 window 中收到此消息,而不是 Xcode,我可以向您保证 IBOutlets 是已连接。

编辑2: "Solved" 它,我的应用程序没有任何 LaunchScreen 文件(它直接进入故事板)我添加了一个 LaunchScreen 文件并且错误消失了......我不知道为什么会这样...... .

非常感谢!

每当任何 ios 项目,如果你遇到这种错误“[setValue:forUndefinedKey:]”然后打开故事板或 xib 并寻找“!”连接检查器中的符号并将其删除。

在您的项目中 "scrollHeight" 缺少已连接的插座。

这是 IBOutlet 未与其所有者正确连接的错误。

当你CMD+Click File's Owner时,会提示哪个UIElement连接了两次或者没有连接。

找到不正确的连接并断开连接即可解决问题

我在 IOS 8.3 设备上遇到了同样的问题。一旦第一个 ViewController 包含 IBOutlet,splasboardd 就会崩溃。因此,我添加了一个 LaunchImage Storyboard(如最新 Interface Design Guides 中所述),其中 ViewController 没有任何 IBOutlets,并且 splashboardd 崩溃消失了。