UIImageView的转角半径不适用于动态尺寸的UICollectionViewCell

时间:2019-03-18 15:04:11

标签: swift uicollectionview uiimage uicollectionviewcell

我有一个单元格,其中一个UIImageView的高度为单元格大小的70%,其余30%的空间被标签用完了。

单元格具有动态尺寸,该尺寸是根据设备宽度计算的。

我确保单元格是正方形的,并且单元格中包含的UIImageView的高度和宽度也具有1:1的比例

我正在“集合视图”的cellForItem委托方法中设置UIImage的角半径

cell.userImage.layer.cornerRadius = cell.userImage.bounds.width / 2
cell.userImage.clipsToBounds = true

The Image that I get is this

那么有人能指出我正确的方向,为什么会这样吗? 我何时应该在单元生命周期中设置图像的角半径?

如果我给图像视图提供静态大小,则不会发生这种情况,但是我希望该大小根据屏幕大小是动态的

2 个答案:

答案 0 :(得分:1)

尝试cell.userImage.layer.maskToBounds = true

更好地将imageView包装在UIView中。然后设置UIView属性bound.size.width/2

答案 1 :(得分:0)

您正在采用“界限”的宽度。尝试获取cell.userImage的宽度/高度。

cell.userImage.layer.cornerRadius = cell.userImage.bounds.width / 2

此外,图像的比例是否为1:1?