你的位置:首页 > 操作系统

[操作系统]iOS开发之下拉刷新和上拉加载更多


iOS开发之下拉刷新和上拉加载更多

1.简介

  常用的下拉刷新的实现方式

  (1)UIRefreshControl

  (2)EGOTableViewRefresh

  (3)AH3DPullRefresh

  (4)MJRefresh

  (5)自己实现

2.UIScrollView+PullLoad的使用

2.1 效果图

下拉刷新效果图:

 

 

 

上拉加载更多效果图:

 

 

 

2.2 实现

第一步, 首先添加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)];

  才适合当前程序。