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:使用顶部/底部布局指南进行顶部/底部约束时,应用程序始终崩溃
转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束