如何以编程方式在UITableViewCells中居图像?

时间:2015-06-27 14:56:48

标签: ios uitableview

我希望我的iOS应用能够在UITableViewCell中的每个原型UITableView中显示图像。我的UITableView已在故事板中创建,图像以imageView属性编程指定,而不是NSLayoutConstraints和自动布局。

我发现UIImages的对齐方式与图标的宽度不同。例如,在下图中,有两个蓝色图标具有不同的宽度。如果与顶部的另一行相比,它旁边的UILabel的第二个图标似乎没有正确对齐:

我猜这种错位可以通过在原型单元格中放置图像,然后为每个图标设置约束来使用自动布局来修复。我认为这是一项繁琐的工作,应该有更好的方法,因为在这种情况下imageView属性真的很方便。它几乎为你服务。可能是一个使图像居中的属性,所以即使单元格中的图像没有相同的宽度,它看起来也很好。

2 个答案:

答案 0 :(得分:1)

一旦你理解了约束条件,它们就不那么糟了,单元格是最简单的配置案例之一。

在这种情况下,只需在宽度上设置约束(即,将宽度设置为XX),将另一个约束设置为在单元格内垂直居中,然后在图像旁边的标签上设置一些约束(左边和右)。

约束变得如此重要的原因之一是因为屏幕的宽度变化(因此,表格视图中的单元格),所以为了使它们看起来正确,约束确实使它更容易。

答案 1 :(得分:0)

您可以在UIImageView上设置内容模式。尝试中心选项。

imageView.contentMode = .center