UITableViewCell布局问题

时间:2015-01-21 00:25:07

标签: ios objective-c uitableview autolayout size-classes

我有一个简单的自定义UITableViewCell,如下所示:

enter image description here

  • UIImageView应该保持与单元格一样高,并且在最左边时保持相同的比例。这有效。

  • 标题标签应保持垂直居中,并保留图像中的x个像素数。这有效。

  • 最后,9.9标签应该垂直居中,并且x值来自右侧的披露指示器。这有效。

问题是,我正在尝试使标题标签尽可能宽,同时保留图像和9.9标签的x像素。我尝试通过在图像上设置约束(左边填充)和9.9标签(右边填充)来做到这一点,但是然后Xcode抱怨9.9标签的水平设置是不明确的。

任何人都可以帮我给标题标签赋予动态宽度而不会破坏右边的9.9标签的约束吗?

2 个答案:

答案 0 :(得分:3)

可能有点晚了,但你有2个可以增长或缩小的标签。由于您没有给出约束条件,因此代码无法确定Title是否应该增长或9.9应该增长以适应屏幕的宽度。

您可以调整标题的水平拥抱/压缩,使其在9.9标签之前增长。这意味着您可以避免使用固定宽度。

答案 1 :(得分:1)

我认为如果您使用固定宽度约束9.9标签(假设您知道它的大小不会改变),它将起作用。

所以从左边开始:

  • 图片的约束为0
  • 图片具有比例约束
  • 标题标签对x像素
  • 的图像有约束力
  • 标题对{9}的x像素
  • 有正确的约束
  • 9.9具有固定宽度约束
  • 9.9 x像素的右约束

希望这有帮助