1

我正在使用 Xcode 6 开发 IOS 应用程序。故事板中有 20 多个 uiviewcontroller。在 uiviewcontroller 上复制时,Xcode 6 因以下详细信息而崩溃。

Process:               Xcode [3249]
Path:                  /Applications/Xcode.app/Contents/MacOS/Xcode
Identifier:            com.apple.dt.Xcode
Version:               6.0.1 (6528)
Build Info:            IDEFrameworks-6528000000000000~2
App Item ID:           497799835
App External ID:       712682811
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Xcode [3249]
User ID:               502

Date/Time:             2014-10-31 21:29:48.253 +0530
OS Version:            Mac OS X 10.10 (14A389)
Report Version:        11
Anonymous UUID:        BA5EB3A3-EAF6-AC59-7BEB-054003FB610F


Time Awake Since Boot: 9600 seconds

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

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

Application Specific Information:
ProductBuildVersion: 6A317
ASSERTION FAILURE in /SourceCache/IDEInterfaceBuilder/IDEInterfaceBuilder-6245/InterfaceBuilderKit/Document/IBDocument.m:2067
Details:  An instance of IBUIView with object ID 7tL-KA-q28 did not archive its child (IBLayoutConstraint) with an object of ID zUL-0Z-d57.
Object:   <IBStoryboardDocument: 0x7fb9e9c14200>
Method:   -documentArchiver:didArchiveObject:
Thread:   <NSThread: 0x7fb9e95388d0>{number = 1, name = main}
Hints:   None
Backtrace:
0  0x0000000108396f0a -[IDEAssertionHandler handleFailureInMethod:object:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in IDEKit)
1  0x0000000107154baf _DVTAssertionHandler (in DVTFoundation)
2  0x0000000107154e9e _DVTAssertionFailureHandler (in DVTFoundation)
3  0x000000011178ed32 -[IBDocument documentArchiver:didArchiveObject:] (in IDEInterfaceBuilderKit)
4  0x00000001119c3eed -[IBStoryboardDocument documentArchiver:didArchiveObject:] (in IDEInterfaceBuilderKit)
5  0x00000001117c821f __51-[IBDocumentArchiver archiveObject:forOptionalKey:]_block_invoke (in IDEInterfaceBuilderKit)
6  0x00000001117c749d -[IBDocumentArchiver recurseWithElementNamed:forObject:kind:invokingBlock:] (in IDEInterfaceBuilderKit)
7  0x00000001117c7f62 -[IBDocumentArchiver archiveObject:forOptionalKey:] (in IDEInterfaceBuilderKit)
8  0x00000001117c8f1f __59-[IBDocumentArchiver archiveArray:withName:forOptionalKey:]_block_invoke (in IDEInterfaceBuilderKit)
9  0x00000001117c749d -[IBDocumentArchiver recurseWithElementNamed:forObject:kind:invokingBlock:] (in IDEInterfaceBuilderKit)
10  0x00000001117c8d0d -[IBDocumentArchiver archiveArray:withName:forOptionalKey:] (in IDEInterfaceBuilderKit)
11  0x00000001119c4736 __47-[IBStoryboardDocument archiveTopLevelObjects:]_block_invoke_2 (in IDEInterfaceBuilderKit)
12  0x00000001117c749d -[IBDocumentArchiver recurseWithElementNamed:forObject:kind:invokingBlock:] (in IDEInterfaceBuilderKit)
13  0x00000001117c9a13 -[IBDocumentArchiver archiveGroupWithName:forOptionalKey:usingBlock:] (in IDEInterfaceBuilderKit)
14  0x00000001117c9c91 -[IBDocumentArchiver archiveGroupWithName:usingBlock:] (in IDEInterfaceBuilderKit)
15  0x00000001119c432b __47-[IBStoryboardDocument archiveTopLevelObjects:]_block_invoke (in IDEInterfaceBuilderKit)
16  0x00000001117c749d -[IBDocumentArchiver recurseWithElementNamed:forObject:kind:invokingBlock:] (in IDEInterfaceBuilderKit)
17  0x00000001117c9a13 -[IBDocumentArchiver archiveGroupWithName:forOptionalKey:usingBlock:] (in IDEInterfaceBuilderKit)
18  0x00000001117c9c91 -[IBDocumentArchiver archiveGroupWithName:usingBlock:] (in IDEInterfaceBuilderKit)
19  0x00000001119c4109 -[IBStoryboardDocument archiveTopLevelObjects:] (in IDEInterfaceBuilderKit)
20  0x000000011178f01c -[IBDocument archiveAndVerifyArchivingOfTopLevelObjects:] (in IDEInterfaceBuilderKit)
21  0x000000011178f761 -[IBDocument archivePlatformIndependentDataWithDocumentArchiver:] (in IDEInterfaceBuilderKit)
22  0x00000001119c4fbb -[IBStoryboardDocument archivePlatformIndependentDataWithDocumentArchiver:] (in IDEInterfaceBuilderKit)
23  0x000000011178f322 -[IBDocument archiveDocument:] (in IDEInterfaceBuilderKit)
24  0x00000001117c749d -[IBDocumentArchiver recurseWithElementNamed:forObject:kind:invokingBlock:] (in IDEInterfaceBuilderKit)
25  0x00000001117c7770 -[IBDocumentArchiver archiveDocument:withType:compatibilityVersion:] (in IDEInterfaceBuilderKit)
26  0x00000001117c7a5a -[IBDocumentArchiver dataFromArchiveDocument:withType:compatibilityVersion:] (in IDEInterfaceBuilderKit)
27  0x00000001117924d0 __46-[IBDocument fileWrapperOfType:options:error:]_block_invoke (in IDEInterfaceBuilderKit)
28  0x0000000111791e80 -[IBDocument fileWrapperOfType:options:error:] (in IDEInterfaceBuilderKit)
29  0x000000011179284c -[IBDocument fileWrapperOfType:error:] (in IDEInterfaceBuilderKit)
30  0x00007fff97904f57 -[NSDocument writeToURL:ofType:error:] (in AppKit)
31  0x0000000111781d31 -[IBDocument writeToURL:ofType:error:] (in IDEInterfaceBuilderKit)
32  0x00007fff97908053 -[NSDocument writeToURL:ofType:forSaveOperation:originalContentsURL:error:] (in AppKit)
33  0x0000000111784fc6 -[IBDocument writeToURL:ofType:forSaveOperation:originalContentsURL:error:] (in IDEInterfaceBuilderKit)
34  0x00007fff97906fbb -[NSDocument _writeSafelyToURL:ofType:forSaveOperation:forceTemporaryDirectory:error:] (in AppKit)
35  0x00007fff97907ce3 -[NSDocument _writeSafelyToURL:ofType:forSaveOperation:error:] (in AppKit)
36  0x00007fff97907e51 -[NSDocument writeSafelyToURL:ofType:forSaveOperation:error:] (in AppKit)
37  0x000000010821f21f -[IDEEditorDocument writeSafelyToURL:ofType:forSaveOperation:error:] (in IDEKit)
38  0x00007fff97915115 __66-[NSDocument saveToURL:ofType:forSaveOperation:completionHandler:]_block_invoke_22307 (in AppKit)
39  0x00007fff97915016 __66-[NSDocument saveToURL:ofType:forSaveOperation:completionHandler:]_block_invoke2304 (in AppKit)
40  0x00007fff97913436 __66-[NSDocument saveToURL:ofType:forSaveOperation:completionHandler:]_block_invoke2176 (in AppKit)
41  0x00000001083cb887 __50-[IDEEditorDocument continueFileAccessUsingBlock:]_block_invoke74 (in IDEKit)
42  0x00007fff978fe999 -[NSDocument continueFileAccessUsingBlock:] (in AppKit)
43  0x0000000108203aac -[IDEEditorDocument continueFileAccessUsingBlock:] (in IDEKit)
44  0x00007fff9790e884 __101-[NSDocument _fileCoordinator:asynchronouslyCoordinateReadingContentsAndWritingItemAtURL:byAccessor:]_block_invoke_2 (in AppKit)
45  0x00000001083cbc28 __68-[IDEEditorDocument continueAsynchronousWorkOnMainThreadUsingBlock:]_block_invoke (in IDEKit)

.
.
.

我该如何解决崩溃问题?

4

2 回答 2

0

我在 iPhone 和 iPad 故事板之间复制/粘贴控制器时遇到了类似的问题。复制和粘贴工作正常,但是当我保存故事板时 XCode 崩溃了。我能够通过从复制的控制器中删除所有约束来解决问题。之后故事板保存好了。

于 2015-01-05T06:23:24.080 回答
0

似乎崩溃发生在 -documentArchiver:didArchiveObject: 中,我猜它实际上是在您尝试保存修改后的故事板文件时发生的。我最近遇到了这个错误,这是我的解决方法:

  1. 确定您要在情节提要中修改的部分(作为 XML 文件,您可以在任何 SCM 中查看它们,例如 git)
  2. 将这些部分复制为 XML 代码
  3. 在 Interface Builder 中关闭该 .storyboard 文件
  4. 右键单击该 .storyboard 文件并选择 Open As -> Source Code
  5. 在任何之间粘贴代码(如果粘贴到空故事板文件,则在 之间)
  6. 保存故事板源代码 (XML)
  7. 完毕。

祝你好运。快乐编码。

于 2015-03-11T10:38:30.057 回答