ios fix UIRefreshControl bug

來源:互聯網
上載者:User

標籤:style   blog   class   code   java   color   

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個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.