iOS開發之下拉刷新和上拉加載更多
常用的下拉刷新的實現方式
(1)UIRefreshControl
(2)EGOTableViewRefresh
(3)AH3DPullRefresh
(4)MJRefresh
(5)自己實現
下拉刷新效果圖:
上拉加載更多效果圖:
第一步, 首先添加UIScrollView+PullLoad.m到工程中, 設置UIScrollView+PullLoad.m文件為非ARC(加入 -fno-objc-arc)
在需要添加下拉刷新的.m文件中添加頭文件
#import "UIScrollView+PullLoad.h"
第二步, 為表格視圖添加下拉刷新和上拉加載更多
- (void)PullDownLoadEnd { _count = 1; _tableView.canPullUp = YES; [self startDownloadData]; [_tableView reloadData]; [_tableView stopLoadWithState:PullDownLoadState];}- (void)PullUpLoadEnd { _count += 1; if (_count > 10) { _tableView.canPullUp = NO; } [self startDownloadData]; [_tableView reloadData]; [_tableView stopLoadWithState:PullUpLoadState];}
*注意事項:
if(self.interceptor.downView)// [self.interceptor.downView setFrame:CGRectMake(0, self.contentSize.height, self.frame.size.width, 300)]; [self.interceptor.downView setFrame:CGRectMake(0, self.contentSize.height - 140 - 64 - 49, self.frame.size.width, 300 - 140 - 64 - 49)];
用此類實現下拉加載時,默認顯示的視圖為整個self.view,即:
[self.interceptor.downView setFrame:CGRectMake(0, self.contentSize.height, self.frame.size.width, 300)];
需要改為:
[self.interceptor.downView setFrame:CGRectMake(0, self.contentSize.height - 140 - 64 - 49, self.frame.size.width, 300 - 140 - 64 - 49)];
才適合當前程序。
新聞熱點
疑難解答