[iOS] 下拉刷新与上拉加载 - MJRefresh第三方

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

默认上下拉 举例
// 分别调用方法。也可以用block..
MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget:selfrefreshingAction:@selector(headRefresh)];   

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

self.tabeleView.mj_header= header;
self.tabeleView.mj_footer= footer;    

[self.tabeleView.mj_headerbeginRefreshing];

一种下拉与两种上拉

-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)BOOLautomaticallyChangeAlpha;

提示文字与时间
所有 header 都可以设置提示文字,下拉可以设置刷新时间
一般使用 3 个状态:MJRefreshStateIdle,MJRefreshStatePulling,MJRefreshStateRefreshing

// 提示文字提供 label 自定义,并有方法设置不同状态下的显示内容    
header.stateLabel.hidden = YES;        
[headersetTitle:@"再下拉一点就能刷新了"forState:MJRefreshStateIdle];    
[headersetTitle:@"放开即刷新"forState:MJRefreshStatePulling];    
[headersetTitle:@"Loading ..."forState:MJRefreshStateRefreshing];

// 更新时间提供 label 自定义,header.lastUpdatedTimeLabel.hidden = YES;
加载动画
所有 gif header 都可以设置图片数组。
一般使用 3 个状态:MJRefreshStateIdle,MJRefreshStatePulling,MJRefreshStateRefreshing

// 设置不同状态下的图片数组
[gifHeadersetImages:arr1forState:MJRefreshStateIdle];

// 一张就够了
[gifHeadersetImages:arr2forState:MJRefreshStatePulling];    [gifHeadersetImages:arr3forState:MJRefreshStateRefreshing];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容