首页 > 代码库 > ios fix UIRefreshControl bug
ios fix UIRefreshControl bug
NS_CLASS_AVAILABLE_IOS(6_0) UIRefreshControl 有个毛病有时会出bug 动画下拉就不动了,这里给出修复处理:
@interface UICollectionView (FixRefreshControlJump) @end
#import "UICollectionView+FixRefreshControlJump.h" #import <objc/runtime.h> @implementation UICollectionView (FixRefreshControlJump) + (void)load { Method originMethod = class_getInstanceMethod([UICollectionView class], @selector(setContentInset:)); Method newMethod = class_getInstanceMethod([UICollectionView class], @selector(setNewContentInset:)); method_exchangeImplementations(originMethod, newMethod); UIRefreshControl } - (void)setNewContentInset:(UIEdgeInsets)contentInset { if (self.tracking) { CGFloat diff = contentInset.top - self.contentInset.top; CGPoint translation = [self.panGestureRecognizer translationInView:self]; translation.y -= diff * 3.0 / 2.0; [self.panGestureRecognizer setTranslation:translation inView:self]; } if ([self respondsToSelector:@selector(setNewContentInset:)]) { [self setNewContentInset:contentInset]; } } @end
通过 method_exchangeImplementations swzing的方式处理问题
推荐阅读:
http://www.cnblogs.com/kesalin/archive/2012/01/05/objc_method_swizzling.html
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。