From 85c6cb077bdcc8abec6ba0a7ac1d36c901e447a2 Mon Sep 17 00:00:00 2001 From: muer2000 Date: Fri, 28 Jun 2013 14:09:57 +0800 Subject: [PATCH] Update PSCollectionView.m Decimal precision problems lead gesture event does not respond Old:NSStringFromCGRect(gestureRecognizer.view.frame) New:NSStringFromCGRect(CGRectIntegral(gestureRecognizer.view.frame)) --- PSCollectionView.m | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/PSCollectionView.m b/PSCollectionView.m index 2e5d405..5bdc327 100644 --- a/PSCollectionView.m +++ b/PSCollectionView.m @@ -265,7 +265,7 @@ - (void)relayoutViews { CGRect viewRect = CGRectMake(left, top, self.colWidth, colHeight); // Add to index rect map - [self.indexToRectMap setObject:NSStringFromCGRect(viewRect) forKey:key]; + [self.indexToRectMap setObject:NSStringFromCGRect(CGRectIntegral(viewRect)) forKey:key]; // Update the last height offset for this column CGFloat heightOffset = colHeight > 0 ? top + colHeight + kMargin : top; @@ -406,7 +406,7 @@ - (void)enqueueReusableView:(PSCollectionViewCell *)view { #pragma mark - Gesture Recognizer - (void)didSelectView:(UITapGestureRecognizer *)gestureRecognizer { - NSString *rectString = NSStringFromCGRect(gestureRecognizer.view.frame); + NSString *rectString = NSStringFromCGRect((gestureRecognizer.view.frame)); NSArray *matchingKeys = [self.indexToRectMap allKeysForObject:rectString]; NSString *key = [matchingKeys lastObject]; if ([gestureRecognizer.view isMemberOfClass:[[self.visibleViews objectForKey:key] class]]) { @@ -420,7 +420,7 @@ - (void)didSelectView:(UITapGestureRecognizer *)gestureRecognizer { - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch { if (![gestureRecognizer isMemberOfClass:[PSCollectionViewTapGestureRecognizer class]]) return YES; - NSString *rectString = NSStringFromCGRect(gestureRecognizer.view.frame); + NSString *rectString = NSStringFromCGRect(CGRectIntegral(gestureRecognizer.view.frame)); NSArray *matchingKeys = [self.indexToRectMap allKeysForObject:rectString]; NSString *key = [matchingKeys lastObject];