在UITableViewCell中水平居中两个UILabel

时间:2014-09-19 07:52:29

标签: ios uitableview uilabel autolayout centering

我在UILabel中有两个UITableViewCell。两者都有相同的宽度和高度。

enter image description here

将这两个标签视为一个组。我需要将此标签组水平放置在单元格中。需要注意的重要一点是,这些细胞是自我大小的。意味着单元格的高度取决于单元格内部的内容,因此高度会有所不同。无论高度如何,我都需要将标签组置于中心位置。标签必须保持它们之间的垂直空间。

目前,我已为这两个标签设置了以下约束。

顶级品牌 - Superview的领先空间,Superview的顶级空间 底部标签 - 超级视图的领先空间,超级视图的底部空间 两个标签 - 垂直空间

结果就是这样。

enter image description here

第一个单元格,它按我想要显示。但正如您所看到的,当高度发生变化时,由于顶部空间和底部空间约束得到不同的值,标签会如预期的那样疯狂。我需要这两个标签在所有单元格的第一个单元格中看起来像。

任何人都可以告诉我该怎么做?是否可以在IB中执行此操作,还是必须深入研究在代码中设置自动布局约束?

谢谢。

2 个答案:

答案 0 :(得分:2)

尝试为每个标签约束设置编辑器 - >对齐 - >容器中的垂直中心

答案 1 :(得分:0)

添加“容器中的水平中心”约束。您可以在左侧选项卡“对齐”中找到它。 将此约束添加到每个标签并指定y位置。