MJRefresh 的運用 上拉刷新和下拉刷新

一、添加頭部
code

  //下拉刷新
    _tableView.header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
        self.pageId =1;
        [self updateData:1];
    }];
    
    //上拉加載更多
    self.tableView.footer=[MJRefreshBackNormalFooter footerWithRefreshingBlock:^{
        self.pageId++;
        [self updateData:2];
    }];

二、設置方法orm

-(void)updateData:(int) type{

    [self loadData];
    [self.tableView reloadData];
    // 3. 結束刷新
    if (type==1) {
        [self.tableView.header endRefreshing];

    }else{

        [self.tableView.footer endRefreshing];
    }
}

三、數據更新設置  這裏是指 上拉加載更多,後面加載的數據和前面的合併it

#pragma mark 數據疊加
-(void)mergeData:(NSMutableArray *)array{

    if (self.pageId==1){
        self.tableData=array;
        return;
    }

    NSMutableArray *newArray=[NSMutableArray arrayWithArray:self.tableData];
    [array enumerateObjectsUsingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
        [newArray addObject:obj];
    }];
    self.tableData=newArray;

}


四、cell 若是以前已經建立的 就不建立table

相關文章
相關標籤/搜索