我用Xcode6 beta6打开了一个现有的iOS项目,Xcode列出了以下对Storyboard和Xib文件的警告:

自动首选最大布局宽度在iOS版本中不可用 8.0以前版本

我尝试通过设置宽度来解决警告,如下所示:

然而,这并没有消除警告。如何去除?


当前回答

要在大型故事板中找到问题标签,请遵循以下步骤。

在xCode的Issue Navigator中右键单击错误并选择“Reveal In Log”。(注:@Sam的建议如下,看看xCode的报表导航器。此外,@Rivera在评论中指出,“从Xcode 6.1.1开始,点击警告将自动打开并突出显示冲突标签”。我还没有对此进行测试)。

这将在故事板文件的末尾用代码显示错误。复制.storyboard后的值

接下来,将故事板显示为源文件。 搜索。通过查看内容,您应该能够很容易地从这里判断出它是什么标签。

找到标签后,对我来说有效的解决方案是将“首选宽度”设置为0。

顺便说一句,你总是可以通过选择项目并在标识检查器下查看来快速获得接口项目的id。非常方便。

其他回答

解决方法很简单

只需要启用iOS 8及更高版本的构建即可

我通过选择W / H选项中的原始布局来让它工作。故事板正在正常工作,错误已经消失。

还要确保你开发的是iOS 8.0。从项目的一般设置中检查。

这就是你应该按的地方。

出于某种原因,即使将iOS部署目标更改为8.0或更高版本,Xib文件也不会采用该更改,并在文件检查器中保持先前的设置

因此,您应该为每个Xib手动更改它

一旦完成,警告将消失:-)

您可以在不将故事板作为源打开的情况下修复此问题。 如果numberolines !=1并且部署目标< 8.0,UILabels将触发此警告

如何找到它?

转到Issue Navigator (CMD+8)并选择带有警告的最新构建 找到警告(s)(搜索“自动首选最大布局”)并按下右边的展开按钮 找到UILabel的对象ID 打开Storyboard并搜索(CMD+f)对象。它将选择并突出显示UILabel 根据其他人的建议,设置Preferred Width = 0 "Explicit"

要在大型故事板中找到问题标签,请遵循以下步骤。

在xCode的Issue Navigator中右键单击错误并选择“Reveal In Log”。(注:@Sam的建议如下,看看xCode的报表导航器。此外,@Rivera在评论中指出,“从Xcode 6.1.1开始,点击警告将自动打开并突出显示冲突标签”。我还没有对此进行测试)。

这将在故事板文件的末尾用代码显示错误。复制.storyboard后的值

接下来,将故事板显示为源文件。 搜索。通过查看内容,您应该能够很容易地从这里判断出它是什么标签。

找到标签后,对我来说有效的解决方案是将“首选宽度”设置为0。

顺便说一句,你总是可以通过选择项目并在标识检查器下查看来快速获得接口项目的id。非常方便。