Xcode 8 添加布局边距崩溃

Posted

技术标签:

【中文标题】Xcode 8 添加布局边距崩溃【英文标题】:Xcode 8 Adding Layout Margins Crash 【发布时间】:2016-11-08 03:02:23 【问题描述】:

当我尝试使用 Xcode 上的右侧面板为 TableViewCell 上的标签添加布局边距时,我尝试添加显式边距(上、左、下、右)。但是,只要我输入一个数值,或者点击箭头更改数值,Xcode 就会崩溃。

我附上了一张照片,以显示我正在尝试在其中添加布局边距的面板,以及它崩溃的位置。

任何想法为什么它不会让我调整边距?

【问题讨论】:

"Xcode 意外退出。" 我预计这是 xcode 中的一个严重错误。我想我可能会尝试直接编辑情节提要,但是.... 这里也一样。每次我尝试更改容器中标签的下边距时,xcode 都会崩溃。我在虚拟机中运行 xcode。 UITextField也有同样的问题 我认为出现问题是因为宽度约束。首先删除或禁用宽度约束,然后尝试添加/启用尾随约束,然后如果需要添加宽度约束。我认为它的工作 【参考方案1】:

尝试清除约束,连接/重新连接插座并应用新的约束。

【讨论】:

【参考方案2】:

有这个问题。它的 Xcode 错误。已经修好了,不用担心:)

【讨论】:

【参考方案3】:

我也遇到过类似的问题。

我发现并在实际项目中使用的答案(但对于 UICollectionView)是获取 CollectionViewFlowLayout 的出口并在代码中自己定义边距(行间距和项目间距)。

例如

collectionViewFlowLayout.minimumLineSpacing = getCollectionViewWidth() * 0.05

其中getCollectionViewWidth()是一个函数,它返回collection view的大小(不同的屏幕会有所不同),0.05只是随机系数。

希望对你有所帮助,有什么问题可以问。

如果您在情节提要中的任何视图上添加边距时出现崩溃,您也可以尝试获取它们的出口并重新定义它们的框架。这是一种糟糕的风格,但如果你不解决问题,我可以向你推荐唯一一种我自己使用的风格。

还可以尝试在 X-Code 中通过单击任务栏中的 Product - Clean清理项目

【讨论】:

【参考方案4】:

清除所有约束并尝试一一应用。这样你就可以解决这个问题了。

【讨论】:

【参考方案5】:

请移除所有应用并连接到插座的约束。并尝试应用新的约束。

有时我们会从您的文件中删除 Outlet .h 或 .m 或 swift 文件,这些文件连接到 Storyboard 或 xibs 中的视图,当时会出现此问题。

【讨论】:

【参考方案6】:

清除所有约束是要走的路。环顾每一个角落和缝隙,然后右键单击 Main.storyboard 和其左侧的 ViewControllerScene 菜单中的每一个小东西。如果您可以将格式设置回其最基本的级别,您的约束将正常工作!

【讨论】:

【参考方案7】:

清除所有约束并尝试逐个应用。并获取.xib文件并与Table view Cell连接

【讨论】:

【参考方案8】:

Xcode 将一些用户状态信息存储在 Xcode 项目文件中,该文件实际上是一个文件夹。该状态信息可能已损坏。您通常可以丢弃 .xcodeproj 文件夹中的所有内容,project.pbxproj 文件除外。这可能会解决您的问题。

打开包含您的.xcodeproj 文件的文件夹。右键单击.xcodeproj 文件并选择Show Package Contents。然后扔掉除了project.pbxproj 文件之外的所有东西。

如果您知道 Xcode 工作区是什么,并且您实际上正在使用它,那么您可能没有要丢弃的 project.xcworkspace 文件,或者您可能不想丢弃它。但是如果你不知道 Xcode 工作区是什么,那么你就没有使用它,所以你可以扔掉project.xcworkspace。 Xcode 会自动重新创建它。

see This Link

【讨论】:

以上是关于Xcode 8 添加布局边距崩溃的主要内容,如果未能解决你的问题,请参考以下文章

iOS 8 Xcode 6:使用顶部/底部布局指南进行顶部/底部约束时,应用程序始终崩溃

Xcode 6 为布局边距设置默认值或禁用它们

在 Android 布局中折叠边距

xcode自动布局问题

转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束

在Xcode 9上,约束到边距不能正常工作