IOS 處理分頁資料的上拉下拉重新整理
阿新 • • 發佈:2019-01-09
@interface Phy_PackagesController () { MKNetworkOperation *op; NSMutableArray *array; NSMutableArray *array2; NSInteger _page,_page2; NSInteger _pageSize,_pageSize2; } @property (weak, nonatomic) IBOutlet UITableView *tableview; @end @implementation Phy_PackagesController -(id)init{ _page=1; _page2=1; //頁碼 _pageSize=10; _pageSize2=10; //每頁條數 self = [super init]; if(self){
[email protected]"體檢套餐"; } return self; } -(void)dealloc { [array removeAllObjects]; [array2 removeAllObjects]; array = nil; array2 = nil; } - (void)viewDidLoad { [super viewDidLoad]; array=[[NSMutableArray alloc]init]; array2=[[NSMutableArray alloc]init]; //上下拉重新整理 self.tableview.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{ if(!self._typelist)//普通套餐列表 { [self PhyExamPackageList]; } else//體檢型別套餐 { [self initTypeData]; } }]; self.tableview.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{ if(!self._typelist)//普通套餐列表 { [self loadMorePhyExanjd]; } else//體檢型別套餐 { [self loadMoreinitTypeData]; } }]; [self.tableview.mj_header beginRefreshing]; self.tableview.delegate = self; self.tableview.dataSource = self; [self.tableview reloadData]; } -(void)viewDidDisappear:(BOOL)animated { if (op) { [op cancel]; } } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } #pragma mark - Request //普通套餐列表 -(void)PhyExamPackageList { __weak Phy_PackagesController *ws = self; op=[PhysicalExamManager phyExamPackageList:_page pageSize:_pageSize successBlock:^(PhyExamPackageModel *result) { [ws.tableview.mj_header endRefreshing]; if(result){ if([result.resultCode isEqualToString:kStatusSucc]){ _page=1; [array removeAllObjects]; [array addObjectsFromArray:result.response ]; [ws.tableview reloadData]; }else{ [self.alertView showMessage:@"資料載入完了"]; // [self.alertView showMessage:result.msg]; } }else{ [ws.tableview.mj_header endRefreshing]; [self.alertView showMessage:kMessageNetError]; } } errorBlock:^(NSString *error) { [ws.tableview.mj_header endRefreshing]; [self.alertView showMessage:kMessageNetError]; }]; } //下拉重新整理更多普通套餐資料 -(void)loadMorePhyExanjd { __weak Phy_PackagesController *ws = self; op=[PhysicalExamManager phyExamPackageList:_page+1 pageSize:_pageSize successBlock:^(PhyExamPackageModel *result) { [ws.tableview.mj_footer endRefreshing]; if(result){ if([result.resultCode isEqualToString:kStatusSucc]){ _page += 1; [array addObjectsFromArray:result.response ]; [ws.tableview reloadData]; }else{ [self.alertView showMessage:@"資料載入完了"]; // [self.alertView showMessage:result.msg]; } }else{ [ws.tableview.mj_footer endRefreshing]; [self.alertView showMessage:kMessageNetError]; } } errorBlock:^(NSString *error) { [ws.tableview.mj_footer endRefreshing]; [self.alertView showMessage:kMessageNetError]; }]; } //根據體檢型別查詢套餐 -(void)initTypeData { __weak Phy_PackagesController *ws = self; op=[PhysicalExamManager proListByType:self._typelist.dictId page:_page2 pageSize:_pageSize2 successBlock:^(proListByTypeModel *result) { [ws.tableview.mj_header endRefreshing]; if(result){ if([result.resultCode isEqualToString:kStatusSucc]){ _page2=1; [array removeAllObjects]; [array addObjectsFromArray:result.response]; [ws.tableview reloadData]; }else{ [self.alertView showMessage:@"資料載入完了"]; // [self.alertView showMessage:result.msg]; } }else{ [ws.tableview.mj_header endRefreshing]; [self.alertView showMessage:kMessageNetError]; } } errorBlock:^(NSString *error) { [self.alertView showMessage:kMessageNetError]; [ws.tableview.mj_header endRefreshing]; }]; } //根據體檢型別查詢套餐下拉重新整理 -(void)loadMoreinitTypeData { __weak Phy_PackagesController *ws = self; op=[PhysicalExamManager proListByType:self._typelist.dictId page:_page2+1 pageSize:_pageSize2 successBlock:^(proListByTypeModel *result) { [ws.tableview.mj_footer endRefreshing]; if(result){ if([result.resultCode isEqualToString:kStatusSucc]){ _page2 += 1; [array addObjectsFromArray:result.response]; [ws.tableview reloadData]; }else{ [self.alertView showMessage:@"資料載入完了"]; // [self.alertView showMessage:result.msg]; } }else{ [ws.tableview.mj_footer endRefreshing]; [self.alertView showMessage:kMessageNetError]; } } errorBlock:^(NSString *error) { [self.alertView showMessage:kMessageNetError]; [ws.tableview.mj_footer endRefreshing]; }]; }