1

在用 Xcode 关闭我的故事板时(通过退出 Xcode 本身或切换到另一个文件),这让我等待了一段时间,直到我强制退出。

在使用 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
4

3 回答 3

0

故事板文件是 XML 格式的简单文本文件。因此,如果 Xcode 无法打开它,只需使用您选择的文本编辑器即可。然后在文件中搜索 MainScreenScale,看看是否有什么奇怪的地方。

如果您能记住您在情节提要上所做的最后编辑,请尝试将它们回滚。

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

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

于 2015-04-12T16:10:15.483 回答
0

你能检查以下

  1. [NSLayoutContraint constraintWithItem ...] 方法为零。
  2. 您可以关闭 auto layout ,但通过代码向子视图添加约束。3.在nib/UIView中没有创建视图,但是已经应用了约束,把约束代码从initWithNib方法移到viewDidLoad中。
于 2015-04-12T10:01:46.027 回答
0

嗯,我想通了。

在做了 git-bisect 之类的事情(删除一些 VC 及其内容,直到 IB 停止崩溃)之后,找到了原因。

我在两个屏幕上都有自己的 titleView 视图。我不知道确切的原因,但这一直是我的麻烦。将我自己的 titleView 从 IB 移动到代码完全停止了这些崩溃。

现在,很高兴了解为什么会发生这种情况。也许在我看来有什么错误的实现......

于 2015-04-14T09:14:44.790 回答