您的位置:首页 > 产品设计 > UI/UE

iOS UIScrollView 的下拉刷新和上拉加载的实现

2016-11-02 11:09 417 查看
iOS UIScrollView
的下拉刷新和上拉加载的实现

下面我简单的说一说iOS UIScrollView
的下拉刷新和上拉加载的实现。

首先导入第三方库:

MJRefresh

添加头文件:

#import "MJRefresh.h"

添加代理:

@interface
ViewController ()<UIScrollViewDelegate>

声明全局变量:

@property (nonatomic,
strong) UIScrollView *myScrollView;//滚动视图

@property (nonatomic,
assign) NSInteger page;//当前页数

懒加载创建myScrollView:

- (UIScrollView *) myScrollView{

    

    if (!_myScrollView) {

        

        UIScrollView *myScrollView = [[UIScrollView
alloc]initWithFrame:CGRectMake(0,
64, self.view.frame.size.width,
self.view.frame.size.height-64)];

        

        myScrollView.backgroundColor = [UIColor
whiteColor];

        myScrollView.delegate =
self;

        

//如果你导入的MJRefresh库不是最新的库,就用下面的方法创建下拉刷新和上拉加载事件

        myScrollView.header = [MJRefreshNormalHeader
headerWithRefreshingTarget:self
refreshingAction:@selector(headRefresh)];

        myScrollView.footer = [MJRefreshAutoNormalFooter
footerWithRefreshingTarget:self
refreshingAction:@selector(footerRefresh)];

        

//如果你导入的MJRefresh库是最新的库,就用下面的方法创建下拉刷新和上拉加载事件

        myScrollView.mj_header = [MJRefreshNormalHeader
headerWithRefreshingTarget:self
refreshingAction:@selector(headRefresh)];

        myScrollView.mj_footer = [MJRefreshAutoNormalFooter
footerWithRefreshingTarget:self
refreshingAction:@selector(footerRefresh)];

        

        self.myScrollView = myScrollView;

        

    }

    return
_myScrollView;

}

#pragma mark - 下拉刷新

- (void)headRefresh{

    

    self.page =
1;

    [self
getData];

    

}

#pragma mark - 上拉加载

- (void)footerRefresh{

    self.page ++;

    [self
getData];

}

#pragma mark - 请求数据

- (void)getData{

    

   
//当请求数据成功或失败后,如果你导入的MJRefresh库不是最新的库,就用下面的方法结束下拉刷新和上拉加载事件

    [self.myScrollView.header
endRefreshing];

    [self.myScrollView.footer
endRefreshing];

   
//如果已经加载到最后一页

    [self.myScrollView.footer
noticeNoMoreData];

    

    

   
//当请求数据成功或失败后,如果你导入的MJRefresh库是最新的库,就用下面的方法结束下拉刷新和上拉加载事件

    [self.myScrollView.mj_header
endRefreshing];

    [self.myScrollView.mj_footer
endRefreshing];

   
//如果已经加载到最后一页

    [self.myScrollView.mj_footer
endRefreshingWithNoMoreData];

}

到这里,你就实现了UIScrollView
的下拉刷新和上拉加载
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐