lxcid / LXReorderableCollectionViewFlowLayout

Extends `UICollectionViewFlowLayout` to support reordering of cells. Similar to long press and pan on books in iBook.

Home Page:http://lxcid.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[collectionView cellForItemAtIndexPath:indexPath] cell animates at wrong location

ChrisKlingler opened this issue · comments

I have a classic UICollectionView inside of a viewController that uses a LXReorderableCollectionViewFlowLayout for reordering. The reordering works great and the underlying arrays change accordingly so the cells all show up in the right locations, but I'm having an issue where a subview of the cells is supposed to animate after being selected on didSelectItemAtIndexPath, using NSLog I can tell that the selection is showing the right indexPath as being selected but a totally different cell then the one at the indexPath is animating with the following:

- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{

UICollectionViewCell *cell = (UICollectionViewCell *)[collectionView cellForItemAtIndexPath:indexPath];
//animate press

    NSLog(@"indexPath cell is %@", [UICollectionView indexPathForCell:cell]); // returns the correct indexPath
    [UIView animateWithDuration:0.1f delay:0.0f options:UIViewAnimationOptionCurveEaseIn animations:^{
        cell.BackgroundView.alpha = 1.0f; //animates the wrong cell (not at indexPath reported by NSLog above)
    } completion:^(BOOL finished) {
        [UIView animateWithDuration:0.2f delay:0.0f options:UIViewAnimationOptionCurveEaseIn animations:^{
            cell.BackgroundView.alpha = 0.0f;
        } completion:^(BOOL finished) {

        }];
    }];

Here is the code from where I set up the collectionView

LXReorderableCollectionViewFlowLayout *flowLayout = [[LXReorderableCollectionViewFlowLayout alloc] init];
JobStencilLegendsCollection = [[UICollectionView alloc] initWithFrame:CGRectMake(15.0f, 190.0f, 300.0f, 300.0f) collectionViewLayout:flowLayout];
JobStencilLegendsCollection.delegate = self;
JobStencilLegendsCollection.dataSource = self;

I have not changed the code for LXReorderableCollectionViewFlowLayout at all. Any ideas how the inclusion of this layout could affect which cell animates?