From 0e119ab0705c28ac0dedd5225db5e4c313aa17f5 Mon Sep 17 00:00:00 2001 From: Natalie Podrazik Date: Tue, 26 Apr 2016 12:32:32 -0400 Subject: [PATCH] fixes compiler errors for unknown instance method "indexPath" --- .../ASHSpringyCollectionViewFlowLayout.m | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ASHSpringyCollectionView/ASHSpringyCollectionViewFlowLayout.m b/ASHSpringyCollectionView/ASHSpringyCollectionViewFlowLayout.m index 8ed914b..d86c584 100644 --- a/ASHSpringyCollectionView/ASHSpringyCollectionViewFlowLayout.m +++ b/ASHSpringyCollectionView/ASHSpringyCollectionViewFlowLayout.m @@ -52,13 +52,20 @@ -(void)prepareLayout { // Step 1: Remove any behaviours that are no longer visible. NSArray *noLongerVisibleBehaviours = [self.dynamicAnimator.behaviors filteredArrayUsingPredicate:[NSPredicate predicateWithBlock:^BOOL(UIAttachmentBehavior *behaviour, NSDictionary *bindings) { - BOOL currentlyVisible = [itemsIndexPathsInVisibleRectSet member:[[[behaviour items] firstObject] indexPath]] != nil; + id item = [[behaviour items] firstObject]; + BOOL currentlyVisible = NO; + if ([item isKindOfClass:[UICollectionViewLayoutAttributes class]]) { + currentlyVisible = [itemsIndexPathsInVisibleRectSet member:[(UICollectionViewLayoutAttributes *)item indexPath]] != nil; + } return !currentlyVisible; }]]; [noLongerVisibleBehaviours enumerateObjectsUsingBlock:^(id obj, NSUInteger index, BOOL *stop) { [self.dynamicAnimator removeBehavior:obj]; - [self.visibleIndexPathsSet removeObject:[[[obj items] firstObject] indexPath]]; + id item = [[obj items] firstObject]; + if ([item isKindOfClass:[UICollectionViewLayoutAttributes class]]) { + [self.visibleIndexPathsSet removeObject:[(UICollectionViewLayoutAttributes *)item indexPath]]; + } }]; // Step 2: Add any newly visible behaviours.