错位的视图警告

时间:2014-04-28 15:54:20

标签: xcode interface-builder constraints

我的观点:

enter image description here

我的约束:

enter image description here

最后两个约束等于0.

警告:

"垂直位置在运行时将为428,但在画布中为420."

似乎是一个假警告,因为当我启动它时,我的按钮就在正确的位置。我该如何修复警告或隐藏它?

4 个答案:

答案 0 :(得分:3)

如果删除所有约束,然后将它们重新放入。它应该可以工作。有时在放置约束时会发生这种情况,然后通过错误地拖动视图来移动视图。它曾经发生在我身上。点击你的视图,然后在故事板的底部,你有几个方框。其中一个用于放置约束,下一个(向右)可以选择删除视图上的所有约束。只要选择了视图,您就可以仅在视图中删除它们。然后按照你想要的方式把它们放回去,警告就会消失。您可能在不知情的情况下稍微轻推了一下视图。如果有效,请告诉我们。

编辑#1

这很奇怪。我在示例项目中遵循了我的指示,事情很顺利。没有警告。但是,我注意到你说的你的下限约为0.看看我的照片它实际上是88。

enter image description here

我认为您在选择下限时需要选择底部布局指南。我不知道你为什么会出现零。试一试,告诉我们。

答案 1 :(得分:3)

如果单击警告,它将为您提供重新定位视图以匹配约束的选项,以及另一个调整约束以匹配视图当前位置的选项。除非你做的事情非常复杂,否则你不必删除和重新添加约束。

作为Douglas said,如果您移动了视图或将约束设置为与视图的当前位置不匹配的值,则会出现此状态。未经您的许可,Interface Builder UI通常不会移动视图,但是当您运行应用程序时,将评估约束,而不参考您的视图在xib / storyboard中的位置。

答案 2 :(得分:0)

要解决此问题,您必须选择界面构建器,然后转到编辑器面板 - >解决自动布局问题 - >更新框架,您将完成。它对我有用。享受!

答案 3 :(得分:0)

新的Xcode版本具有一个名为

的按钮

更新框架(调试区域右侧第一个按钮)

如果您将视图constraint错误地拖动或重新定位到实际约束,它将更新视图。{p>

enter image description here