iOS 7:错误的“标签 – 标签”视图框架在运行时会有所不同

我刚刚在iOS 6上完成了一个应用程序,并在一周前购买了一个开发人员帐户,所以没有太多时间玩iOS 7 SDK。 刚刚下载的黄金大师版本,并试图升级我的应用程序与iOS 7兼容。

我收到了很多警告

“标签 – 标签”错位的视图框架在运行时会有所不同。

我无法运行该程序。 该项目包含tableview,它是parsing和显示来自RSS的XML提要。

如何解决这个问题?

我有同样的问题,我得到下面的答复forms苹果:

您需要更新约束以匹配这些视图的帧。

我做了以下几点:

编辑器 – >解决自动布局问题 – >清除**视图控制器中的所有约束

然后我再次在视图中重新sorting我的对象。

PS:先试试Enrico的解决scheme。

被接受的答案将解决这个问题,但这不是一个好的解决scheme,因为它会删除所有的约束。 如果你已经花费了几个小时的时间,那就不要这样做。

如果单击警告旁边的三angular形,则可以获取有关错误的解释。 那么你可以将框架移动到应该的位置。 例如:

在这里输入图像说明

在这种情况下,我只是将我的文本视图的y位置移动到94,警告将消失。 这是因为我的一个约束会迫使视图在应用程序运行时处于其他位置,但是位置与当前在故事板中的位置不同。


将框架移动到正确位置的另一种方法是单击故事板中“视图控制器”名称旁边的警告,然后单击黄色警告标志,然后单击“更新框架”。

在这里输入图像说明

在这里输入图像说明

这两种方法不具有破坏性,不会消除您的限制。 如果有的话,它会表明你可能需要做一些小小的调整。

我有同样的问题,你需要的是,更新约束或更新框架。 在故事板上,您有一个小工具栏,如下图所示。 在这里输入图像说明

请看这个意思: –

在这里输入图像说明

您可以select“更新帧”或“更新约束”,并使用“重置为build议的约束”。 这将解决有关放错位置的问题。 不要拖放视图来调整布局。 改为编辑适用的约束。 如果你不清楚,请告诉我。

如果您在xCode中find更新帧时遇到问题,可以这样做:

在这里输入图像说明

没有一个答案在所有情况下都有效。 至于Xcode的最新版本,使用UISearchBar,在IB中启用作用域字段会使search字段显示为双倍高度(但不显示其下的作用域栏)。 无论您是否将高度限制(任何高度)添加到search字段,都会得到警告,这是错误的视图,运行时为88 H,IB为44 H。 更新帧(任何或所有帧)不解决它。 看起来像IB中的一个bug。