使用PINRemoteImage填充CollectionViewCell图像

时间:2016-01-24 15:13:26

标签: ios swift uicollectionview

我在ViewDidLoad进行网络调用以获取对象(前25个),然后我在willDisplayCell中再次调用以获取其余对象。我在下面的代码中使用PINReMoteImage。它有效,但问题是当你滚动浏览集合视图时,一个单元格将有一张图片,然后另一张图片将出现在它上面。如何改进此UI?我认为updateWithProgress应该通过使用模糊来处理这个问题,直到图像加载但它似乎没有工作?

  override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {



        let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! PinCollectionViewCell


        if let pinImageURL = self.pins[indexPath.row].largestImage().url {

            cell.pinImage?.pin_updateWithProgress = true
            cell.pinImage?.pin_setImageFromURL(pinImageURL, completion: ({ (result : PINRemoteImageManagerResult) -> Void in

                if let image = result.image {
                    self.imageArray.append(image)
                }

            }))


        }

1 个答案:

答案 0 :(得分:0)

问题是我正在重复使用单元格,但我没有重置图像。所以我只是在上面添加了cell.pinImage?.image = nil。一旦我发现这是问题,我就向单元格添加UIActivityViewIndicatorView并在图像进入时停止。