我正在尝试将contentMode
的{{1}}设置为UIImageView
,该.top
包含在UIView
中,但它未正确设置或已用完UIView
的边界。
这就是我的单元格的样子,其中红色是容器UIView
,其约束为UIImageView
:
仅供参考:UIImageView
是方形尺寸,因为它将应用圆角。
我试图做的事情和结果:
1
thumbnail.contentMode = .top
thumbnail.clipsToBounds = true
thumbnail.sizeToFit()
2
thumbnail.contentMode = .top
thumbnail.clipsToBounds = true
还尝试添加:
thumbnailContainer.clipsToBounds = true
thumbnailContainer.sizeToFit()
我正在尝试实现是第一个屏幕截图的结果,其中UIImageView
包含在其容器视图中,如第二个屏幕截图所示。
更新 基于评论和答案,我相信有些人对我正在尝试做什么感到困惑,所以我附上了我期望的结果的另一个屏幕截图:
如您所见,我希望contentMode
的{{1}}为UIImageView
,以便显示图片的中上部。您可以清楚地看到第3个屏幕截图中的.top
({1}}与第4个屏幕截图中的contentMode
之间的差异,即.scaleAspectFit
,因为它显示的是contentMode
图像的中上部。
但,我希望.top
保持其原始尺寸,如UIImageView
为contentMode
的第3个屏幕截图所示,而不是水平和垂直伸展,如第二张截图所示。
我希望这能澄清我想要实现的目标。
答案 0 :(得分:0)
要获得所需的结果,您需要将内容模式设置为.aspectFit
,以便该图像将以UIImageView的大小调整自身大小,保持其原始高宽比。