iOS-实用的刷新库MJRefresh-PSRefresh

来源:互联网 发布:java unix timestamp 编辑:程序博客网 时间:2024/06/11 01:33

博文主要介绍几种常用刷新库的使用方法和下载地址:


一.MJRefresh

Demo地址:https://github.com/CoderMJLee/MJRefresh


1.新版本介绍version= '3.1.5',2016-06-13

    1).添加前缀mj_;
    2).支持国际化zh-Hans(简体中文),zh-Hant(繁体中文),en(英文)
    3).可以自定义刷新控件
    4).更加自由化,支持文字,图片,GIF等混合搭配(有点扯


2.使用详解:

下拉刷新

// 进入刷新状态后会自动调用这个blockself.tableView.header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{    }];// 设置回调(一旦进入刷新状态,就调用target的action,也就是调用self的loadNewData方法)self.tableView.header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];// 马上进入刷新状态[self.tableView.header beginRefreshing];

上拉加载

// 进入刷新状态后会自动调用这个blockself.tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{   }];// 设置回调(一旦进入刷新状态,就调用target的action,也就是调用self的loadMoreData方法)self.tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];

全部加载完毕

if (self.flag) {                                        [weakSelf.tableView.mj_footer endRefreshingWithNoMoreData];                }else{                                         [weakSelf.tableView.mj_footer endRefreshing];                }

*全局变量flag标记是否为最后一页

博文参考来源:

MJRefresh刷新

http://www.jianshu.com/p/7f3b89a02c38

http://www.jianshu.com/p/4ea427bab0af    



二.PSRefresh

Demo地址:https://github.com/slipawayleaon/PSRefresh


1.PSRefresh简介

库命名为PSRefresh,支持UIScrollView及所有UIScrollView的子类控件,UITableView(横向的tableVIew)及UICollectionView等皆可。

支持自定义文字,支持自定义gif图,可设置是否为最后一页。

本文一共提供了三种样式,分别是普通样式gif加载样式(带有状态label)、git加载样式(不带有状态label)。


2.使用详解:

使用时导入 "UIScrollView+PSRefresh.h" 文件即可,文件中提供的属性及接口如下:

@interface UIScrollView (PSRefresh) /** * 是否是最后一页 */@property (nonatomic, assign) BOOL isLastPage; /** * header背景色 */@property (nonatomic, strong) UIColor *refreshHeaderBackgroundColor; /** * footer背景色 */@property (nonatomic, strong) UIColor *refreshFooterBackgroundColor; /** * header 字体 */@property (nonatomic, strong) UIFont *refreshHeaderFont; /** * header 字体颜色 */@property (nonatomic, strong) UIColor *refreshHeaderTextColor; /** * footer 字体 */@property (nonatomic, strong) UIFont *refreshFooterFont; /** * footer 字体颜色 */@property (nonatomic, strong) UIColor *refreshFooterTextColor; /** * ********************** 以下是调用的方法 ********************** *//** * 普通的刷新及加载 */- (void)addRefreshHeaderWithClosure:(PSRefreshClosure)closure; - (void)addRefreshFooterWithClosure:(PSRefreshClosure)closure; /** * gif 图刷新及加载(带有状态提示) */- (void)addGifRefreshHeaderWithClosure:(PSRefreshClosure)closure; - (void)addGifRefreshFooterWithClosure:(PSRefreshClosure)closure; /** * gif 图刷新及加载(不带有状态提示) */- (void)addGifRefreshHeaderNoStatusWithClosure:(PSRefreshClosure)closure; - (void)addGifRefreshFooterNoStatusWithClosure:(PSRefreshClosure)closure; /** * ****************** 以下三个方法是对上面方法的再次封装 ****************** *//** * 普通的刷新及加载 */- (void)addRefreshHeaderWithClosure:(PSRefreshClosure)headerClosure  addRefreshFooterWithClosure:(PSRefreshClosure)footerClosure; /** * gif 图刷新及加载(带有状态提示) */- (void)addGifRefreshHeaderWithClosure:(PSRefreshClosure)headerClosure  addGifRefreshFooterWithClosure:(PSRefreshClosure)footerClosure; /** * gif 图刷新及加载(不带有状态提示) */- (void)addGifRefreshHeaderNoStatusWithClosure:(PSRefreshClosure)headerClosure  addGifRefreshFooterNoStatusWithClosure:(PSRefreshClosure)footerClosure; /** * 结束刷新 */- (void)endRefreshing; @end</span>

调用时可以有两种方法,可以同时添加头部控件和尾部控件,也可以分别进行添加,方法如下(这里只列举一种调用方法,只是为了展示两种不同的调用方式):

1.同时添加

<span style="font-size:14px;">- (void)normalDemo { WeakSelf(self) [_collectionView addRefreshHeaderWithClosure:^{  // 刷新操作  [weakSelf refreshData]; } addRefreshFooterWithClosure:^{  // 加载操作  [weakSelf loadingData]; }];}

2.分别添加

- (void)normalDemo { WeakSelf(self) [_collectionView addRefreshHeaderWithClosure:^{  // 刷新操作  [weakSelf refreshData]; }];  [_collectionView addRefreshFooterWithClosure:^{  // 加载操作  [weakSelf loadingData]; }];}


博文参考来源:

PSRefresh刷新

http://www.jianshu.com/p/61da918ba0d7





1 0
原创粉丝点击