我正在尝试使用我使用 KingFisher(图像缓存库)获得的圆形图像设置一个 collectionView。
我不确定应该用圆角、imageView 还是单元格本身设置什么。即使单元格是圆形的,图像似乎也填满了正方形。
到目前为止,我正在使用此代码(如果在将图像更改为正方形后未设置它):
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
...
if let path = user.profilePictureURL {
if let url = URL(string: path) {
cell.profilePictureImageView.kf.setImage(with: url)
cell.profilePictureImageView.layer.cornerRadius = cell.profilePictureImageView.frame.width/2.0
}
}
和 ImageView :
class ProfilePicture : UIImageView {
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)!
self.commonInit()
}
override init(frame: CGRect) {
super.init(frame: frame)
self.commonInit()
}
func commonInit(){
self.layer.masksToBounds = false
self.layer.cornerRadius = self.layer.frame.width/2.0
self.clipsToBounds = true
}
}
但是第一次下载图片是这样的(单元格背景是蓝色的)