我有一个自定义的UITableViewCell,我想要显示一个高度已设置的图像。
由于它是一个自定义单元格,我希望图像由使用此自定义单元格的UITable修改(来自cellForRowAt
覆盖)。
在这种情况下,我想将高度修改为25.0
,但我想保持图像的纵横比。
将contentMode
属性设置为.scaleAspectFit
会使我的图像居中(不知道为什么),这不是我想要的(我希望它在左边)。
我到目前为止所做的是将translatesAutoresizingMaskIntoConstraints
设置为false并设置约束,如此(logo
是UIImageView
):
// logo settings
logo.translatesAutoresizingMaskIntoConstraints = false
aView.addSubview(logo)
NSLayoutConstraint.activate([
// logo constraints
logo.topAnchor.constraint(equalTo: aView.topAnchor, constant: 30.0),
logo.leadingAnchor.constraint(equalTo: aView.leadingAnchor, constant: 40.0),
logo.heightAnchor.constraint(equalToConstant: 25.0), // fixed height
])
然后,在使用customCell时:
// ... some code before
cell.logo.image = UIImage(named: "newImage")
我知道如何保持图像的纵横比并且具有固定的高度吗?
修改:
对于如此回避感到抱歉,这是我拥有的和我想要的一个例子:
我在服务器上有图像。这些图片会在我的应用程序中下载并显示在自定义单元格中,但我不知道它们的宽度和高度。
让我们说应用程序检索的图像是100w和50h:我想在固定高度为25点的单元格上显示它。
当然,我希望它具有正确的宽度(在这种情况下,它将是50w和25h)。我不希望它被裁剪,我只想以25分的高度显示它。宽度仅限于其视图范围。