在 iphone 模拟器中运行该应用程序运行正常,但在 ipad 视网膜模拟器中运行它,我看到此崩溃:
2015-04-15 18:39:13.814 [17308:2881892] ***由于未捕获的异常终止应用程序' NSInternalInconsistencyException',原因:'无法在捆绑中加载NIB:& #39; NSBundle .app> (加载)'名称' 7bK-jq-Zjz-view-r7i-6Z-zg0''
不确定发生了什么。我没有这个奇怪名称的nib / xib文件:' 7bK-jq-Zjz-view-r7i-6Z-zg0'
我尝试运行ipad模拟器已经有一段时间了。与此同时发生了一些重大变化(我不确定是否会导致此问题): 1.重命名该项目 2.升级到Swift 1.2。由于Sift已经在1.2上,因此无法将项目恢复到此更改之前。
我将如何进行故障排除?
我查看了故事板来源(根据Kamal的建议),发现' 7bK-jq-Zjz'是表视图控制器的ID(此控制器是选项卡栏控制器的第一个选项卡,它又是拆分视图控制器的主视图)。
奇怪代码的第二部分' r7i-6Z-zg0',结果是所提到的表视图控制器内的表视图的ID。
我尝试了两件事:
这是新的崩溃:
2015-04-17 22:10:01.427 [33373:6444860] ***由于未捕获的异常终止应用程序' NSInternalInconsistencyException',原因:'无法在捆绑中加载NIB:& #39; NSBundle .app> (加载)'名称' 3hh-RB-vwq-view-1d1-Kq-Vzm''
如上所述,iPhone模拟器运行良好 - iPad没有。但是当定向到横向模式时(即拆分视图没有折叠时),iPhone 6 plus有时会崩溃。
- 结束更新
*** First throw call stack:
(
0 CoreFoundation 0x0031f746 __exceptionPreprocess + 182
1 libobjc.A.dylib 0x01f33a97 objc_exception_throw + 44
2 CoreFoundation 0x0031f66d +[NSException raise:format:] + 141
3 UIKit 0x0109fe2f -[UINib instantiateWithOwner:options:] + 1003
4 UIKit 0x00eba124 -[UIViewController _loadViewFromNibNamed:bundle:] + 270
5 UIKit 0x00eba8bb -[UIViewController loadView] + 295
6 UIKit 0x010c069e -[UITableViewController loadView] + 77
7 UIKit 0x00ebaaef -[UIViewController loadViewIfRequired] + 78
8 UIKit 0x00ebb095 -[UIViewController view] + 35
9 UIKit 0x00f0ad2f -[UITabBarController transitionFromViewController:toViewController:transition:shouldSetSelected:] + 426
10 UIKit 0x00f0a36f -[UITabBarController transitionFromViewController:toViewController:] + 64
11 UIKit 0x00f0652b -[UITabBarController _setSelectedViewController:] + 339
12 UIKit 0x00f062e5 -[UITabBarController setSelectedIndex:] + 115
13 UIKit 0x00f05e91 __51-[UITabBarController _setViewControllers:animated:]_block_invoke394 + 43
14 UIKit 0x00ddfd4f +[UIView(Animation) performWithoutAnimation:] + 82
15 UIKit 0x00f05d3d -[UITabBarController _setViewControllers:animated:] + 3627
16 UIKit 0x00f04403 -[UITabBarController _updateLayoutForTraitCollection:] + 302
17 UIKit 0x00f03e73 __80-[UITabBarController willTransitionToTraitCollection:withTransitionCoordinator:]_block_invoke + 69
18 UIKit 0x0125f107 -[_UIViewControllerNullAnimationTransitionCoordinator _applyBlocks:releaseBlocks:] + 198
19 UIKit 0x0125ed9a -[_UIViewControllerNullAnimationTransitionCoordinator _runAlongsideAnimations] + 148
20 UIKit 0x00ed8063 -[UIViewController(UIContainerViewControllerProtectedMethods) setOverrideTraitCollection:forChildViewController:] + 399
21 UIKit 0x01248a10 -[UISplitViewController _setMasterOverrideTraitCollectionActive:] + 127
22 UIKit 0x0124435a -[UISplitViewController initWithCoder:] + 112
23 UIKit 0x0122392e UINibDecoderDecodeObjectForValue + 739
24 UIKit 0x01223643 -[UINibDecoder decodeObjectForKey:] + 371
25 UIKit 0x010a0c1a -[UIRuntimeConnection initWithCoder:] + 189
26 UIKit 0x0122392e UINibDecoderDecodeObjectForValue + 739
27 UIKit 0x01223b30 UINibDecoderDecodeObjectForValue + 1253
28 UIKit 0x01223643 -[UINibDecoder decodeObjectForKey:] + 371
29 UIKit 0x0109fed0 -[UINib instantiateWithOwner:options:] + 1164
30 UIKit 0x0135d185 -[UIStoryboard instantiateViewControllerWithIdentifier:] + 220
31 UIKit 0x0135d301 -[UIStoryboard instantiateInitialViewController] + 74
32 UIKit 0x00d556fc -[UIApplication _loadMainStoryboardFileNamed:bundle:] + 79
33 UIKit 0x00d55984 -[UIApplication _loadMainInterfaceFile] + 245
34 UIKit 0x00d542f4 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1337
35 UIKit 0x00d6d93e __84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invoke + 59
36 UIKit 0x00d5304a -[UIApplication workspaceDidEndTransaction:] + 155
37 FrontBoardServices 0x0451ec9e __37-[FBSWorkspace clientEndTransaction:]_block_invoke_2 + 71
38 FrontBoardServices 0x0451e72f __40-[FBSWorkspace _performDelegateCallOut:]_block_invoke + 54
39 FrontBoardServices 0x04530d7c __31-[FBSSerialQueue performAsync:]_block_invoke_2 + 30
40 CoreFoundation 0x00241050 __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 16
41 CoreFoundation 0x00236963 __CFRunLoopDoBlocks + 195
42 CoreFoundation 0x002367bb __CFRunLoopRun + 2715
43 CoreFoundation 0x00235a5b CFRunLoopRunSpecific + 443
44 CoreFoundation 0x0023588b CFRunLoopRunInMode + 123
45 UIKit 0x00d52a02 -[UIApplication _run] + 571
46 UIKit 0x00d56106 UIApplicationMain + 1526
47 IDZZZ 0x000a3ad4 main + 180
48 libdyld.dylib 0x02644ac9 start + 1
答案 0 :(得分:3)
我从iOS 8.3开始就遇到了这个问题,最后解决了它。我曾希望这个问题能在iOS 8.4中修复,但它并不是因为我认为它不是一个错误。
我有一个带有2个UINavigationControllers的UISplitViewController作为主/详细视图。主视图UINavigationController有一个UITabBarController。当这个失败时,有3个UITableViewControllers作为UITabBarController的子视图。错误正是你所拥有的:iOS 8.3+在尝试加载标签栏的第一个子视图时抛出错误,即使" nib"肯定会出现在故事板中并在iPhone上运行良好。
我的修复是在UITabBarController和每个UITableViewController子视图之间插入一个UINavigationController。因此,而不是UITabBarController与"查看控制器"与3个UITableViewControllers的关系,UITabBarController现在有"查看控制器"与3个UINavigationControllers的关系以及每个UINavigationControllers都有"根视图控制器"与其中一个UITableViewControllers的关系。
这可能为时已晚,但我希望它有所帮助。
答案 1 :(得分:2)
您使用的是UISplitController吗?在这种情况下,我解决了我的问题,删除了故事板segue for master和detail并以编程方式添加它们
答案 2 :(得分:0)
您确定包含所有内容吗?确保选择所有故事板并添加到会员,在侧栏,第一个选项卡。