2015-04-12 132 views
1

使用Xcode关闭我的故事板(通过退出Xcode本身或切换到另一个文件),它使我等待一段时间,直到我强制退出。Interface Builder崩溃(iOSRenderServer)

在使用AppCode打开故事板时,我看到有关iOSRenderServer的警报刚刚崩溃。那么这是唯一有这个麻烦的项目,我相信故事板里面有一些错误,但我不知道究竟是什么错误。

以前有人见过这个吗?

原因: 'MainScreenScale是无效的:0.000000'

Process:    iOSRenderServer [25123] 
Path:     /Applications/AppCode.app/Contents/plugins/appcode-designer/iOSRenderServer.app/iOSRenderServer 
Identifier:   iOSRenderServer 
Version:    1.0 (1.0) 
Code Type:    X86-64 (Native) 
Parent Process:  appcode [25007] 
Responsible:   appcode [25007] 
User ID:    503 

Date/Time:    2015-04-12 10:40:12.951 +0300 
OS Version:   Mac OS X 10.10.3 (14D131) 
Report Version:  11 
Anonymous UUID:  82A2E61F-7F5F-9CDC-F8CC-3AE376F99B61 

Sleep/Wake UUID:  38298837-20D2-4686-8D6D-EEC965606B5D 

Time Awake Since Boot: 54000 seconds 
Time Since Wake:  2400 seconds 

Crashed Thread:  0 Dispatch queue: com.apple.main-thread 

Exception Type:  EXC_CRASH (SIGABRT) 
Exception Codes:  0x0000000000000000, 0x0000000000000000 

Application Specific Information: 
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'MainScreenScale is not valid: 0.000000' 
terminating with uncaught exception of type NSException 
abort() called 

Application Specific Backtrace 1: 
0 CoreFoundation      0x000000010d683c65 __exceptionPreprocess + 165 
1 libobjc.A.dylib      0x000000010d31cbb7 objc_exception_throw + 45 
2 CoreFoundation      0x000000010d683aca +[NSException raise:format:arguments:] + 106 
3 Foundation       0x000000010cf31a57 -[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 169 
4 BaseBoard       0x000000010f1c89c1 ___BSMainScreenGetInfo_block_invoke + 351 
5 libdispatch.dylib     0x000000010dc91964 _dispatch_client_callout + 8 
6 libdispatch.dylib     0x000000010dc7f902 dispatch_once_f + 129 
7 BaseBoard       0x000000010f1c8808 BSMainScreenScale + 43 
8 FrontBoardServices     0x000000010f156b0e -[FBSDisplay initWithCADisplay:isMainDisplay:seed:tags:scale:] + 234 
9 UIKit        0x000000010bba7d02 -[UIApplication __completeAndRunAsPlugin] + 355 
10 iOSRenderServer      0x000000010b8b0a61 -[AppDelegate doStart] + 129 
11 iOSRenderServer      0x000000010b8b3b84 my_registerAsSystemApp + 132 
12 UIKit        0x000000010bba7ad3 -[UIApplication _run] + 302 
13 UIKit        0x000000010bbaa900 UIApplicationMain + 1282 
14 iOSRenderServer      0x000000010b8b3fa2 main + 962 
15 libdyld.dylib      0x000000010dcc1145 start + 1 

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 
0 libsystem_kernel.dylib   0x000000010dfc9286 __pthread_kill + 10 
1 libsystem_sim_c.dylib   0x000000010dd6919a abort + 129 
2 libc++abi.dylib     0x000000010db3b481 abort_message + 257 
3 libc++abi.dylib     0x000000010db633d5 default_terminate_handler() + 267 
4 libobjc.A.dylib     0x000000010d31ce19 _objc_terminate() + 103 
5 libc++abi.dylib     0x000000010db60b01 std::__terminate(void (*)()) + 8 
6 libc++abi.dylib     0x000000010db60b73 std::terminate() + 51 
7 libobjc.A.dylib     0x000000010d31cd93 objc_terminate + 9 
8 libdispatch.dylib    0x000000010dc91978 _dispatch_client_callout + 28 
9 libdispatch.dylib    0x000000010dc7f902 dispatch_once_f + 129 
10 com.apple.BaseBoard    0x000000010f1c8808 BSMainScreenScale + 43 
11 com.apple.FrontBoardServices 0x000000010f156b0e -[FBSDisplay initWithCADisplay:isMainDisplay:seed:tags:scale:] + 234 
12 com.apple.UIKit     0x000000010bba7d02 -[UIApplication __completeAndRunAsPlugin] + 355 
13 com.jetbrains.iOSRenderServer 0x000000010b8b0a61 -[AppDelegate doStart] + 129 
14 com.jetbrains.iOSRenderServer 0x000000010b8b3b84 my_registerAsSystemApp + 132 
15 com.apple.UIKit     0x000000010bba7ad3 -[UIApplication _run] + 302 
16 com.apple.UIKit     0x000000010bbaa900 UIApplicationMain + 1282 
17 com.jetbrains.iOSRenderServer 0x000000010b8b3fa2 main + 962 
18 libdyld.dylib     0x000000010dcc1145 start + 1 

Thread 1:: Dispatch queue: com.apple.libdispatch-manager 
0 libsystem_kernel.dylib   0x000000010dfca232 kevent64 + 10 
1 libdispatch.dylib    0x000000010dc81d94 _dispatch_mgr_thread + 54 

Thread 2: 
0 libsystem_kernel.dylib   0x000000010dfc994a __workq_kernreturn + 10 
1 libsystem_pthread.dylib   0x000000010dff840d start_wqthread + 13 

Thread 3: 
0 libsystem_kernel.dylib   0x000000010dfc994a __workq_kernreturn + 10 
1 libsystem_pthread.dylib   0x000000010dff840d start_wqthread + 13 

Thread 4: 
0 libsystem_kernel.dylib   0x000000010dfc994a __workq_kernreturn + 10 
1 libsystem_pthread.dylib   0x000000010dff840d start_wqthread + 13 

Thread 0 crashed with X86 Thread State (64-bit): 
    rax: 0x0000000000000000 rbx: 0x0000000000000006 rcx: 0x00007fff54355e78 rdx: 0x0000000000000000 
    rdi: 0x000000000000070b rsi: 0x0000000000000006 rbp: 0x00007fff54355ea0 rsp: 0x00007fff54355e78 
    r8: 0x0000000000000000 r9: 0x000000010dd8f600 r10: 0x0000000008000000 r11: 0x0000000000000206 
    r12: 0x00007fff54356000 r13: 0x0000000000000000 r14: 0x000000010e001300 r15: 0x00007fff54355ee0 
    rip: 0x000000010dfc9286 rfl: 0x0000000000000206 cr2: 0x000000010db643b2 

回答

0

您可以检查以下

  1. [NSLayoutContraint constraintWithItem ...]方法是零。
  2. 您可能已关闭自动布局,但通过代码向子视图添加约束。 3.视图尚未在nib/UIView中创建,但约束已应用,将约束代码从initWithNib方法移至viewDidLoad。
+0

谢谢,会检查。 但我想我不会在代码中设置它。 MainScreenScale如何受到自动布局的影响? – bronenos

0

故事板文件是一种XML格式的简单文本文件。所以,如果Xcode无法打开它,只需使用您选择的文本编辑器即可。然后搜索MainScreenScale文件,看看是否有什么奇怪的东西。

如果您还记得您在故事板上进行的最后修改,请尝试将它们回滚。

并注意不要搞乱XML结构。首先制作文件的副本。

最佳解决方案:如果您在源代码管理下有您的项目,请回滚到上次提交。

0

嗯,我明白了。

做了类似git-bisect之后(删除一些VC及其内容,直到IB停止崩溃),原因被发现。

我在两个屏幕上有我自己的视图作为titleView。我不知道为什么,但这一直在造成我的麻烦。将我自己的titleView从IB移到代码中,完全停止了这些崩溃。

现在,理解这件事发生的原因是很好的。 也许有什么毛病在我的看法内实现...

+0

但是这个titleView几周没有问题 – bronenos