上拉刷新和下拉加载在开发中是比较普遍的,今天就简单的和大家介绍一下MJRefresh的简单用法。(下载地址github.com/CoderMJLee/MJRefresh)
1.首先,创建一个UITableView(我创建的是myTableView)
2.将下载的MJRefresh导入工程中
3.MJRefresh的下拉刷新和上拉加载都具备自定义设置和线程的回调函数两种方式。形式相同(我的下拉用的自定义方式,上拉用的是回调方式)
refreshHeader:
具体代码
// loadNewData--调用的是上拉刷新的代码
MJRefreshStateHeader *stateHeader = [MJRefreshStateHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];
// 设置文字
[stateHeader setTitle:@"快扯我,快点" forState:MJRefreshStateIdle];
[stateHeader setTitle:@"数据要来啦" forState:MJRefreshStatePulling];
[stateHeader setTitle:@"服务器正在狂奔 ..." forState:MJRefreshStateRefreshing];
// 设置字体
stateHeader.stateLabel.font = [UIFont systemFontOfSize:15];
stateHeader.lastUpdatedTimeLabel.font = [UIFont systemFontOfSize:18];
// 设置颜色
stateHeader.stateLabel.textColor = [UIColor cyanColor];
stateHeader.lastUpdatedTimeLabel.textColor = [UIColor grayColor];
// 数据将要刷新
[stateHeader beginRefreshing];
// 设置刷新控件
self.myTableView.mj_header = stateHeader;
不要忘记下拉后关闭刷新
// 关闭刷新
[_myTableView.mj_header endRefreshing];
refrsheFooter:
具体代码
__weak ViewController *weakSelf = self;
// 设置下拉回调
self.myTableView.mj_footer = [MJRefreshBackStateFooter footerWithRefreshingBlock:^{
// 调用下拉加载的数据
[weakSelf addData];
}];
// 关闭刷新
[_myTableView.mj_footer endRefreshing];