【发布时间】:2017-01-05 10:05:53
【问题描述】:
App store 应用程序出现崩溃报告,但以下情况除外:
`NSInternalInconsistencyException Could not load NIB in bundle...`
自过去两个月以来,iOS 10 设备和多个 xib 文件都报告了此崩溃。
此类实例的详细信息:
Fatal Exception: NSInternalInconsistencyException
Could not load NIB in bundle: 'NSBundle </var/containers/Bundle/Application/XXX/MyApp.app> (loaded)' with name 'VideoView'`
Fatal Exception: NSInternalInconsistencyException
0 CoreFoundation 0x18d7551b8 __exceptionPreprocess
1 libobjc.A.dylib 0x18c18c55c objc_exception_throw
2 CoreFoundation 0x18d755100 -[NSException initWithCoder:]
3 UIKit 0x193b04fcc -[UINib instantiateWithOwner:options:]
4 UIKit 0x193965e14 -[UIViewController _loadViewFromNibNamed:bundle:]
5 UIKit 0x193737980 -[UIViewController loadView]
6 UIKit 0x1936035bc -[UIViewController loadViewIfRequired]
7 UIKit 0x1936034ec -[UIViewController view]
8 MyApp 0x100135580 -[VideoEventController addMediaPlaybackViewForChannel:andProgram:ofType:] (VideoEventController.m:113)
用于初始化视图控制器的代码是:
self.videoViewCtrl = [[VideoViewController alloc] initWithNibName:@"VideoView" bundle:nil];
[mediaView addSubview:self.videoViewCtrl.view]; //Crash trace points to this line in code
清单:
- 对于特定的 xib,问题并不总是可重现,因此没有参考错误或 xib 名称中没有拼写错误
- xib 文件存在于
Copy Bundle Resources - xib 文件链接到
Target Membership中的目标 - xib 文件的位置设置为
Related to Group
代码使用 AutoLayout 但不使用尺寸类。项目为 iPad 和 iPhone 提供了独立的 xib,遵循命名约定。
有人遇到过同样的问题吗? 加载 NIB 失败的原因可能是什么?
【问题讨论】:
-
加 1 用于执行清单。
-
同样的问题
标签: ios objective-c iphone xib ios10