From 2cfa6d0c634ebe704ac8a80f2ef0986c08b62dbc Mon Sep 17 00:00:00 2001 From: nixzhu Date: Thu, 15 Oct 2015 20:11:15 +0800 Subject: [PATCH] fix logic of photoPickedImageView.hidden when scroll --- .../PickPhotos/PickPhotosViewController.swift | 21 ++++++++++++------- Yep/Views/Cells/Photo/PhotoCell.swift | 1 - 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/Yep/ViewControllers/PickPhotos/PickPhotosViewController.swift b/Yep/ViewControllers/PickPhotos/PickPhotosViewController.swift index 4af60dad..dcea1928 100644 --- a/Yep/ViewControllers/PickPhotos/PickPhotosViewController.swift +++ b/Yep/ViewControllers/PickPhotos/PickPhotosViewController.swift @@ -108,18 +108,23 @@ class PickPhotosViewController: UICollectionViewController, PHPhotoLibraryChange } override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell { + let cell = collectionView.dequeueReusableCellWithReuseIdentifier(photoCellID, forIndexPath: indexPath) as! PhotoCell - - cell.imageManager = imageManager - - if let imageAsset = images[indexPath.item] as? PHAsset { - cell.imageAsset = imageAsset - cell.photoPickedImageView.hidden = !pickedImageSet.contains(imageAsset) - } - return cell } + override func collectionView(collectionView: UICollectionView, willDisplayCell cell: UICollectionViewCell, forItemAtIndexPath indexPath: NSIndexPath) { + + if let cell = cell as? PhotoCell { + cell.imageManager = imageManager + + if let imageAsset = images[indexPath.item] as? PHAsset { + cell.imageAsset = imageAsset + cell.photoPickedImageView.hidden = !pickedImageSet.contains(imageAsset) + } + } + } + override func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) { if let imageAsset = images[indexPath.item] as? PHAsset { diff --git a/Yep/Views/Cells/Photo/PhotoCell.swift b/Yep/Views/Cells/Photo/PhotoCell.swift index e2d9cb0f..27c5fc60 100644 --- a/Yep/Views/Cells/Photo/PhotoCell.swift +++ b/Yep/Views/Cells/Photo/PhotoCell.swift @@ -24,7 +24,6 @@ class PhotoCell: UICollectionViewCell { self.imageManager?.requestImageForAsset(imageAsset, targetSize: CGSize(width: 80, height: 80), contentMode: .AspectFill, options: nil) { [weak self] image, info in self?.photoImageView.image = image - self?.photoPickedImageView.hidden = !imageAsset.favorite } } }