在ImageViewCell中水平居中ImageView

时间:2016-10-17 11:56:18

标签: ios uitableview alignment tableviewcell accessoryview

将图像视图放在单元格中间时,我遇到了一些问题。

我有一个tableView单元格: 一个左对齐的标签 UIImageView(位于屏幕中间但不与AccessoryView或附件重叠) 可选的AccessoryView或附件。

然后我有一个标题单元格 一个左对齐的标签 UIImageView(位于屏幕中间)

问题是我希望所有图像都水平对齐(包括标题),但AccessoryView / Accessory会抛弃我的计算。图像视图是ScaleAspectFit。目前我已将宽度设置为contentView的全宽。

有谁知道我将如何实现这一目标?我读过人们说要放入一个没有AccessoryView或附件的单元格的空视图,但这对Header没有帮助?其他人有硬编码的价值?

非常感谢

1 个答案:

答案 0 :(得分:0)

在单元格布局子视图后更改imageView第x帧原点。只需将其添加到您的单元格定义中。

override func layoutSubviews() {
    let screenWidth = UIScreen.main.bounds.width
    let imageViewWidth = self.imageView?.frame.width
    let imageViewOriginX = (screenWidth - imageViewWidth!) / 2
    self.customImageView.frame.origin.x = imageViewOriginX 
}