Fusuma专辑查看视频拇指交换

时间:2016-10-28 09:12:16

标签: swift uicollectionview uicollectionviewcell phasset

我正在使用Fusuma作为我的图片和视频库。 我有滚动图库视图(FSAlbumView.swift)的问题。当我滚动它交换大拇指的视频,或代替视频拇指,图像拇指来,它没有任何问题的拇指图像,问题只有视频拇指。

这是我的代码。

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

    let cell = collectionView.dequeueReusableCellWithReuseIdentifier("FSAlbumViewCell", forIndexPath: indexPath) as! FSAlbumViewCell

    let currentTag = cell.tag + 1
    cell.tag = currentTag

    let asset = self.images[indexPath.item] as! PHAsset
    if(asset.mediaType == .Image){
        self.imageManager?.requestImageForAsset(asset,
                                                targetSize: cellSize,
                                                contentMode: .AspectFill,
                                                options: nil) {
                                                    result, info in

                                                    if cell.tag == currentTag {
                                                        cell.image = result
                                                    }

        }
    }else if(asset.mediaType == .Video){
        self.imageManager?.requestAVAssetForVideo(asset, options: nil, resultHandler: {(asset: AVAsset?, audioMix: AVAudioMix?, info: [NSObject : AnyObject]?) in
                //dispatch_async(dispatch_get_main_queue(), {

                    let asset = asset as? AVURLAsset
            if asset?.URL.absoluteString != nil{
            self.videoURLArray.append([indexPath.row:(asset?.URL.absoluteString)!])
            }
                    if cell.tag == currentTag {
                        cell.video = asset?.URL
                       // self.videoURLArray[indexPath.row] = (asset?.URL.absoluteString)!
                        print(asset?.URL)

                    }
                    //..var data = NSData(contentsOfURL: asset!.URL)

                //})
            })
    }
    return cell
}

1 个答案:

答案 0 :(得分:1)

我们也有同样的问题。我们做的是在下面给出。不知道它是否正确。

评论以下陈述。

base

使用以下代码段添加if-else块替换

let currentTag = cell.tag + 1  
cell.tag = currentTag