隐含约束iPhone纵向屏幕高度

时间:2014-09-08 19:29:59

标签: ios iphone interface-builder autolayout

我尝试使用界面构建器创建自定义的freefrom视图。 我有一个UIView,它包含一个UIImageView和UILabel。 我将约束设置为根据图像等调整标签和超视图的边距。

现在我希望superview完全符合子视图。但是当我按下Editor - >大小适合内容,超级视图未完全调整大小并且约束存在冲突。出现的是隐式约束(" iPhone纵向屏幕高度"),无法更改/删除。见下面的截图:

enter image description here

3 个答案:

答案 0 :(得分:1)

虽然不理想,但根据您的XIB结构以及您如何引用视图,您可以创建一个"暂存区"查看并将自定义视图放在其中只是为了查看所有内容的布局。也就是说,如果您将视图设置为XIB文件所有者中定义的插座,您只需将其连接到您在"便笺簿中创建的视图即可。

例如,我创建了一个带有方形和内部开关的容器视图。顶部的例子抱怨了相互矛盾的约束并且没有正确布局,而底部示例显示了在一次性视图中居中的相同事物。再次,不理想,但它为我工作。

enter image description here

编辑:我刚刚意识到,一旦#34;便笺簿"视图被丢弃,这是另一个需要考虑的问题。还在调查这个。

答案 1 :(得分:0)

只是为了简单地忘记暂时的标签。您已经添加了图像视图的宽度和高度约束,现在不是使用sizetofit内容,而是尝试在图像视图和它的父视图之间添加前导,尾随,顶部和底部约束。您的父视图应该适合图像视图。

可以使用相同的技术(父视图的约束)使其与图像视图和标签一起使用。

答案 2 :(得分:0)

我注意到当我实际拖动超视图的宽度和高度以满足约束时,红色约束错误随着" iPhone纵向屏幕宽度而消失。约束。换句话说,我的约束条件是我的子视图与其超级视图底部对齐。如果我将superview的底部边缘向上拖动以与子视图对齐,则错误消失。仍然看起来很麻烦且不直观。