界面生成器中的Autolayout Height> = 0帧

时间:2016-01-24 23:28:28

标签: ios autolayout interface-builder

我正在使用界面构建器来设置具有两个标签的表格视图单元格。其中一个应具有动态高度,具体取决于它保持多少文本。 (单元格的动态高度也基于该标签的高度。)我有正确的约束 - 标签和单元格都根据输入文本正确调整大小。我的问题是,要使其工作,我必须在高度> gt的调整大小标签上设置约束。由于某种原因,IB迫使我使标签的屏幕高度为0,这使得很难看到/与...合作。 “Label”下面的小点是0高度标签:

enter image description here

如果我将其设置为大于0的高度(约束应该允许),则约束会变为红色错误:

enter image description here

我很好奇为什么IB不允许我在高度大于最小值的高度上设置带有> =约束的东西。有没有办法摆脱这个错误?

1 个答案:

答案 0 :(得分:0)

使用标签文字时,您无需将高度赋予UILabel。因为它会根据字体大小自动获取高度。您需要做的就是为两个标签提供垂直,顶部和底部约束,并从属性检查器中删除默认文本。现在,您可以创建具有动态高度的表格单元格。

热门标签限制: 前置,顶

底部标签限制: 前置,底部 并在顶部和底部标签之间给出垂直间距。

使用自我调整单元格高度,您可以获得所需的结果。

ref url:self-sizing-cells

以下是我设置的约束图像: enter image description here

这是标签的约束图像。 enter image description here Label1 with text enter image description here Label2 without text

我添加的示例代码用于显示带有结果的数据。 enter image description here

希望它有助于解决您的问题。