iOS使用XZMRefresh实现UITableView或UICollectionView横向刷新
2016-01-31 18:40
671 查看
XZMRefresh
The easiest way to use pull-to-The transverse refresh(非常易用的横向刷新框架与MJRefresh用法一致)框架开发的缘由:
现今已有越来越多的APP需要横向刷新的需求,然而MJRefresh已不能满足该需求,这套框架已经使用的非常的广泛,并且框架本身封装比较完美集成使用也非常的简单,方法的使用大家也非常的熟悉,所以XZMRefresh本着模仿MJRefresh框架做了横向刷新的Refresh,这样大家不必再去适应繁琐的新框架集成。
[github地址]:https://github.com/xiezhongmin/XZMRefresh
APP实例
1.好赞APP
2.淘宝APP
Content
使用方法参考默认
隐藏时间
动画图片
[动画图片 + 隐藏状态和时间](#动画图片 + 隐藏状态和时间)
自定义文字
特性说明
如何使用XZMRefresh
cocoapods导入:pod 'XZMRefresh'
手动导入:
将
XZMRefresh文件夹中的所有文件拽入项目中
导入主头文件:
#import "XZMRefresh.h"
下拉刷新控件的种类
默认(Normal):
XZMRefreshNormalHeader
动图(Gif):
XZMRefreshGifHeader
上拉刷新控件的种类
默认(Normal):
XZMRefreshNormalFooter
动图(Gif):
XZMRefreshGifFooter
默认
#pragma mark UICollectionView + 默认刷新 - (void)addNormalHeader { __weak typeof(self) weakself = self; // 添加下拉刷新头部控件 [self.collectionView addNormalHeaderWithCallback:^{ // 增加1条假数据 weakself.examples += 1; // 模拟延迟加载数据,因此2秒后才调用) dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ [weakself.collectionView reloadData]; // 结束刷新 [weakself.collectionView.xzm_header endRefreshing]; }); }]; // 自动刷新(一进入程序就下拉刷新) [self.collectionView.xzm_header beginRefreshing]; }
隐藏时间
// 隐藏时间 self.collectionView.xzm_header.updatedTimeHidden = YES;
动画图片
__weak typeof(self) weakself = self; // 添加下拉刷新头部控件 [self.collectionView addGifHeaderWithCallback:^{ // 进入刷新状态就会回调这个Block // 增加1条假数据 weakself.examples += 1; // 模拟延迟加载数据,因此2秒后才调用) dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ [weakself.collectionView reloadData]; // 结束刷新 [weakself.collectionView.xzm_gifHeader endRefreshing]; }); }]; // 设置普通状态的动画图片 NSMutableArray *idleImages = [NSMutableArray array]; for (NSUInteger i = 1; i<=60; i++) { UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"dropdown_anim__000%zd", i]]; [idleImages addObject:image]; } [self.collectionView.xzm_gifHeader setImages:idleImages forState:XZMRefreshStateNormal]; // 设置正在刷新状态的动画图片 NSMutableArray *refreshingImages = [NSMutableArray array]; for (NSUInteger i = 1; i<=3; i++) { UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"dropdown_loading_0%zd", i]]; [refreshingImages addObject:image]; } [self.collectionView.xzm_gifHeader setImages:refreshingImages forState:XZMRefreshStateRefreshing]; // 马上进入刷新状态 [self.collectionView.xzm_gifHeader beginRefreshing];
动画图片 + 隐藏状态和时间
// 添加动画图片代码同上 // 隐藏时间 self.collectionView.xzm_gifHeader.updatedTimeHidden = YES; // 隐藏状态 self.collectionView.xzm_gifHeader.stateHidden = YES;
自定义文字
// 设置文字 [self.collectionView.xzm_header setTitle:@"滑动可以刷新" forState:XZMRefreshStateNormal]; [self.collectionView.xzm_header setTitle:@"释放立即刷新" forState:XZMRefreshStatePulling]; [self.collectionView.xzm_header setTitle:@"正在刷新中 ..." forState:XZMRefreshStateRefreshing]; // 设置字体 self.collectionView.xzm_header.font = [UIFont systemFontOfSize:15]; // 设置颜色 self.collectionView.xzm_header.textColor = [UIColor redColor];
特性说明
本框架纯ARC,兼容的系统>=iOS6.0如果在使用过程中遇到BUG,希望你能与我联系(我的邮箱:364101515qq.com)
如果有好的建议以及框架上的不足,请联系我,非常感谢你!
如果喜欢你就Star一下吧,感谢你的支持!
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 插件管理框架 for Delphi(一)
- 使用CSS框架布局的缺点和优点小结
- 列举PHP的Yii 2框架的开发优势
- Windows窗体的.Net框架绘图技术实现方法
- 浅谈JavaScript 框架分类
- 轻量级javascript 框架Backbone使用指南
- javascript实现框架高度随内容改变的方法
- JS刷新框架外页面七种实现代码
- 超赞的动手创建JavaScript框架的详细教程
- 深入探讨前端框架react
- 简单介绍不用库(框架)自己写ajax
- asp.net4.0框架下验证机制失效的原因及处理办法
- 插件管理框架 for Delphi(二)