https://blog.csdn.net/u013285730/article/details/50615551?utm_source=blogxgwz6

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;

1

2

动画图片

__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];

---------------------

作者:配合演出

来源:CSDN

原文:https://blog.csdn.net/u013285730/article/details/50615551

版权声明:本文为博主原创文章,转载请附上博文链接!

iOS使用XZMRefresh实现UITableView或UICollectionView横向刷新的更多相关文章

  1. IOS怎么实现一个UITableView的下拉刷新

    採用的EGORefreshTableHeaderView来实现: 在Controller上实现EGORefreshTableHeaderDelegate的delegate @property(nona ...

  2. iOS 8自动调整UITableView和UICollectionView布局

    本文转载自:http://tech.techweb.com.cn/thread-635784-1-1.html 本文讲述了UITableView.UICollectionView实现 self-siz ...

  3. iOS全埋点解决方案-UITableView和UICollectionView点击事件

    前言 在 $AppClick 事件采集中,还有两个比较特殊的控件: UITableView •UICollectionView 这两个控件的点击事件,一般指的是点击 UITableViewCell 和 ...

  4. iOS中UITableView和UICollectionView的默认空态页

    项目中想实现空态页风格统一控制的效果,就封装了一个默认空态页,使用的技术点有:1 方法替换 ,2 给分类(Category)添加属性. 我们知道,扩展(extension)可以给类添加私有变量和方法. ...

  5. UITableView和UICollectionView的Cell高度的几种设置方式

    UITableViewCell 1.UITableView的Cell高度默认由rowHeight属性指定一个低优先级的隐式约束 2.XIB中可向UITableViewCell的contentView添 ...

  6. [转]iOS8 自动调整UITableView和UICollectionView布局

    转自:http://www.cocoachina.com/industry/20140825/9450.html (via:玉令天下的Blog)   本文讲述了UITableView.UICollec ...

  7. IOS 11 下适配UITableView

    9月份苹果发布了IOS11和Iphone X,这一操作系统一硬件对于开发者适配上面还是造作了不少蛋疼的地方.先来看看IOS 11,这些蛋疼的需要适配的地方: 1.UIScrollView及其子类在IO ...

  8. RumTime实践之--UITableView和UICollectionView缺省页的实现

    有关RunTime的知识点已经看过很久了,但是一直苦于在项目中没有好的机会进行实际运用,俗话说"光说不练假把式",正好最近在项目中碰到一个UITableView和UICollect ...

  9. UITableView和UICollectionView的方法学习一

    参考资料 UITableView UICollectionView UICollectionViewDataSource UICollectionViewDelegate UICollectionVi ...

随机推荐

  1. windows下安装consul

    Consul 是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件, 由 HashiCorp 公司用 Go 语言开发, 基于 Mozilla Public License 2.0 的协议进行 ...

  2. Linux下编译安装Apache报APR not found错误的解决办法

    我在编译安装完Nginx.MySQL和PHP(见之前一篇博客:LNMP环境搭建详细教程)之后,进行apache的编译安装: cd /usr/local/src wget http:.tar.gz ta ...

  3. elixir mix 简介

    概述 mix 是 elixir 工程的构建工具,利用 mix,可以快速方便的创建 elixir 工程,写单元测试,管理 elixir 包的依赖管理等等. 我觉得刚开始学习 elixir 的时候,先简单 ...

  4. Unity基础6 Shadow Map 阴影实现

    这篇实现来的有点墨迹,前前后后折腾零碎的时间折腾了半个月才才实现一个基本的shadow map流程,只能说是对原理理解更深刻一些,但离实际应用估计还需要做很多优化.这篇文章大致分析下shadow ma ...

  5. [福大软工] Z班 第6次成绩排行榜

    作业要求 http://www.cnblogs.com/easteast/p/7668890.html 作业评分 本次作业从引言(5 ') . 用户场景(15 ').类图(10 ').界面原型(15 ...

  6. 【shell脚本】shell脚本实现的 函数差集查找

    文本地址 点击关注微信公众号 wenyuqinghuai 分享提纲: 1. 问题背景 2. 代码实现 1.问题背景 在做公司的测试的自动化测试时,覆盖了一些开发代码的函数,但是那些还没有做,使用一个函 ...

  7. 设计模式のProxyPattern(代理模式)----结构模式

    一.产生背景 在直接访问对象时带来的问题,比如说:要访问的对象在远程的机器上.在面向对象系统中,有些对象由于某些原因(比如对象创建开销很大,或者某些操作需要安全控制,或者需要进程外的访问),直接访问会 ...

  8. skip-thought vector 实现Sentence2vector

    1.常见文本相似度计算方法 常见的短文本相似度计算方法目前有很多中,但这些短文本相似度计算方法都只是提取了短文本中的浅层特征,而无法提取短文本中的深层特征.目前常见的文本相似度计算方法有: 1)简单共 ...

  9. tensorflow中的name_scope, variable_scope

    在训练深度网络时,为了减少需要训练参数的个数(比如LSTM模型),或者是多机多卡并行化训练大数据.大模型等情况时,往往就需要共享变量.另外一方面是当一个深度学习模型变得非常复杂的时候,往往存在大量的变 ...

  10. IPS简单使用方法

    转载:http://blog.csdn.net/zhou1862324/article/details/17512191 IPS(incident packaging service)是11G的新特性 ...