答案 0 :(得分:2)
看起来cell.setup(imageLib[indexPath.row])
为新图片添加了新的UIImageView
,而不是在剪切的代码部分中重用现有的图片。
出于性能原因,请务必不要初始化collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath)
内的任何观看次数。只需将适当的图像分配给属于单元格的imageView即可。
请注意,集合视图会重复使用单元格。
修改强>:
有了更新的问题,你正在做
let image1 = (UIImage(named: imageLib[indexPath.row])?.imageWithRenderingMode(.AlwaysTemplate))!
cell.imgView = UIImageView(image: image1)
cell.imgView.tintColor = UIColor(white:0, alpha:0.7)
cell.userInteractionEnabled = true
只需
let image1 = (UIImage(named: imageLib[indexPath.row])?.imageWithRenderingMode(.AlwaysTemplate))!
cell.imgView.image = image1
并在commonInit()
中尽可能多地进行其他设置。