更改UIImageView图像后,UICollectionView滚动会滞后

时间:2018-06-19 20:15:31

标签: ios swift uicollectionview uiimageview uicollectionviewcell

   let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "sizeCell", for: indexPath) as! SizeCollectionViewCell
        if let _ = sizeSelected[indexPath.item]{
            cell.imageView.image = sizesImageClicked[indexPath.item]
            cell.isSelected = true
            orderCollectionView.selectItem(at: indexPath, animated: false, scrollPosition: .centeredHorizontally)
        }
        else{
            cell.imageView.image = sizesImageUnclicked[indexPath.item]
            cell.isSelected = false
        }
        cell.layer.shouldRasterize = true
        cell.layer.rasterizationScale = UIScreen.main.scale
        return cell

所以我有一个图像的集合视图,当我单击一个单元格时,该图像会更改为其他图像以表明它已被选中,并且我保存了该单元格的索引,以便在单元格被回收时得以保留。我要解决的问题是,当我单击一个单元格时,它变为另一个图像,然后向下滚动,然后尝试向上滚动回去,它滞后并停止,之后我才能再次看到该单元格。我必须再次滚动才能看到该单元格。当我选择了多个单元格时,整个滚动动作会非常缓慢。我假设它与if let语句有关,然后遍历数组,但是如果只选择一个单元格,那么它不应该采用那个吗?顺便说一下,所有图像都保存在本地,因此不会提取数据。

0 个答案:

没有答案