iOS上下拉刷新 - MJRefresh

Posted 星星太阳鱼虾蟹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS上下拉刷新 - MJRefresh相关的知识,希望对你有一定的参考价值。

开源第三方地址:https://github.com/CoderMJLee/MJRefresh

默认上下拉 举例

// 分别 调用方法。也可以用block..

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

MJRefreshAutoNormalFooter *footer = [MJRefreshAutoNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(footRefresh)];

self.tabeleView.mj_header = header;

self.tabeleView.mj_footer = footer;

[self.tabeleView.mj_header beginRefreshing];

一种下拉 与 两种 上拉

- 1.1 一般菊花下拉 MJRefreshNormalHeader

- 1.2 添加动画下拉 MJRefreshGifHeader

- 2.1 点击或自动加载 菊花上拉 MJRefreshAutoNormalFooter

- 2.2 点击或自动加载 动画上拉 MJRefreshAutoGifFooter

- 3.1 反向菊花上拉 MJRefreshBackNormalFooter

- 3.2 反向动画上拉 MJRefreshBackGifFooter

基础属性 与 方法

/** 进入刷新状态 */

- (void)beginRefreshing;

/** 结束刷新状态 */

- (void)endRefreshing;

/** 是否正在刷新 */

- (BOOL)isRefreshing;

/** 根据拖拽比例自动切换透明度 */

@property (assign, nonatomic, getter=isAutomaticallyChangeAlpha) BOOL automaticallyChangeAlpha;

提示文字 与 时间

所有 header 都可以设置提示文字,下拉可以设置刷新时间

一般 使用3 个状态:MJRefreshStateIdle,MJRefreshStatePulling,MJRefreshStateRefreshing

// 提示文字 提供label 自定义,并有方法设置不同状态下的显示内容

header.stateLabel.hidden = YES;

[header setTitle:@"再下拉一点就能刷新了" forState:MJRefreshStateIdle];

[header setTitle:@"放开即刷新" forState:MJRefreshStatePulling];

[header setTitle:@"Loading ..." forState:MJRefreshStateRefreshing];

// 更新时间 提供label 自定义

header.lastUpdatedTimeLabel.hidden = YES;

加载 动画

所有 gif header 都可以设置图片数组。

一般 使用3 个状态:MJRefreshStateIdle,MJRefreshStatePulling,MJRefreshStateRefreshing

// 设置 不同状态下的图片数组

[gifHeader setImages:arr1 forState:MJRefreshStateIdle];// 一张就够了

[gifHeader setImages:arr2 forState:MJRefreshStatePulling];

[gifHeader setImages:arr3 forState:MJRefreshStateRefreshing];

其他

完全 自定义 看demo DIY,

以上是关于iOS上下拉刷新 - MJRefresh的主要内容,如果未能解决你的问题,请参考以下文章

实现上下拉刷新MJRefresh

IOS 常用UI控件

iOS 网络资源汇总之UI

iOS 网络资源汇总之UI

iOS每日一记------------之 中级完美大整理

github上关于iOS的各种开源项目集合(转)