iOS中第三方框架刷新

0.先加入主头文件

#import "MJRefresh.h"

1.添加下拉刷新

MJRefreshHeaderView *header = [MJRefreshHeaderView header];

header.scrollView = self.tableView;

header.delegate = self;

2.添加上拉加载更多

MJRefreshFooterView *footer = [MJRefreshFooterView footer];

footer.scrollView = self.tableView;

footer.delegate = self;

3.监听刷新状态,有2种方式

1> 设置代理delegate,一旦控件进入了刷新状态,就会调用delegate的下列方法

- (void)refreshViewBeginRefreshing:(MJRefreshBaseView *)refreshView

{

    if ([refreshView isKindOfClass:[MJRefreshFooterView class]]) {

        // 上拉加载更多

        

    } else {

        // 下拉刷新

        

    }

}

2> 设置block回调

header.beginRefreshingBlock = ^(MJRefreshBaseView *refreshView) {

    

};

footer.beginRefreshingBlock = ^(MJRefreshBaseView *refreshView) {

    

};

4.通过代码进入刷新状态

[header beginRefreshing]; // 进入刷新状态就会触发相应的代理方法或者block

[footer beginRefreshing]; // 进入刷新状态就会触发相应的代理方法或者block

5.结束刷新状态,回到普通状态

[header endRefreshing];

[footer endRefreshing];

6.可以在MJRefreshBaseView.h中通过控制NeedAudio宏来开启音频功能

7.MJRefreshFooterView.mMJRefreshHeaderView.m中可以修改控件显示的文字

五、如果想在内部限制某个控件的宽高,不让外界随便改,可以重写setFrame:方法,在此方法内部设置自己的宽高

原文地址:https://www.cnblogs.com/changxs/p/3440476.html