1.导入MJRefresh包orm
2.在类中引入:#import "MJRefresh.h"get
3.添加footerViewanimation
添加加载更多的UI样式:it
MJRefreshAutoNormalFooter *footer = [MJRefreshAutoNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];io
myTableView.footer = footer;table
[footer setTitle:@"正在加载中" forState:MJRefreshStateRefreshing];import
[footer setTitle:@"" forState:MJRefreshStateIdle];变量
footer.stateLabel.font = [UIFontsystemFontOfSize:15.0f];select
footer.automaticallyHidden = YES;方法
加载数据:
定义全局变量:int32_t _pageNumber;
定义loadMoreData方法
- (void)loadMoreData{
UIEdgeInsets edge = _tableView.contentInset;
edge.bottom = 44;
[UIView animateWithDuration:0.2 animations:^{
_tableView.contentInset = edge;
}];
[self loadDataWithPage:_pageNumber];
}
4.数据返回处理,排重
//排重数据
for (Model *Model1 in resultArray) {
BOOL isExist = NO;
for (Model *Model in _publish) {
if (Model.positionId == Model1.positionId) {
isExist = YES;
break;
}
}
if (!isExist) {
[_publish addObject:Model1];
}
}
结束刷新
if(_tableView.footer.isRefreshing){
[_tableView.footer endRefreshing];
}
//当数据小于5条,没有下拉刷新
if (_publishPositions.count < 5) {
[_tableView.footer noticeNoMoreData];
_tableView.footer.hidden = YES;
}