美文网首页
iOS MJRefresh 下拉刷新和上拉加载更多的使用

iOS MJRefresh 下拉刷新和上拉加载更多的使用

作者: Zhen斌iOS | 来源:发表于2024-05-28 16:12 被阅读0次

MJRefresh 是一个流行的 iOS 下拉刷新和上拉加载更多的库。它简单易用,支持自定义,能够让你轻松为 UIScrollView 及其子类(如 UITableViewUICollectionView)添加下拉刷新和上拉加载功能。以下是 MJRefresh 的详细使用方法:

安装

CocoaPods

使用 CocoaPods 是安装 MJRefresh 的推荐方式。在你的 Podfile 中添加以下行:

pod 'MJRefresh'

然后运行 pod install 命令。

基本使用

导入 MJRefresh

在你需要使用 MJRefresh 的文件中导入框架:

#import <MJRefresh/MJRefresh.h>

如果你在 Swift 项目中使用,确保你的桥接头文件正确配置了导入语句,或直接在 Swift 文件中导入:

import MJRefresh

添加下拉刷新

对于 UITableViewUICollectionView,添加下拉刷新非常简单:

// Objective-C
self.tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];
// Swift
tableView.mj_header = MJRefreshNormalHeader(refreshingTarget: self, refreshingAction: #selector(loadNewData))

其中,loadNewData 是当触发下拉刷新时,你希望执行的方法。

添加上拉加载更多

同样,添加上拉加载也很直观:

// Objective-C
self.tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreData)];
// Swift
tableView.mj_footer = MJRefreshAutoNormalFooter(refreshingTarget: self, refreshingAction: #selector(loadMoreData))

loadMoreData 是当触发上拉加载时,你希望执行的方法。

结束刷新

记得在加载数据的方法中,加载数据完成后结束刷新状态:

// Objective-C
// 结束下拉刷新
[self.tableView.mj_header endRefreshing];
// 结束上拉加载更多
[self.tableView.mj_footer endRefreshing];
// Swift
// 结束下拉刷新
tableView.mj_header?.endRefreshing()
// 结束上拉加载更多
tableView.mj_footer?.endRefreshing()

高级用法

自定义刷新控件

MJRefresh 支持高度自定义,包括文本、颜色、图标等。例如,自定义下拉刷新控件:

MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];
header.lastUpdatedTimeLabel.hidden = YES; // 隐藏时间标签
header.stateLabel.hidden = YES; // 隐藏状态标签
self.tableView.mj_header = header;

在 Swift 中:

let header = MJRefreshNormalHeader(refreshingTarget: self, refreshingAction: #selector(loadNewData))
header.lastUpdatedTimeLabel.isHidden = true // 隐藏时间标签

相关文章

  • UITableView的基本使用

    一、常用方法 二、上拉刷新,下拉刷新 MJRefresh下拉刷新(上拉加载)使用详解MJRefresh下拉刷新三方...

  • MJRefresh简单使用

    一、默认下拉刷新和上拉加载更多(通过block) 另一种默认下拉刷新和上拉加载更多(通过action), 有时候我...

  • IOS上拉 下拉刷新

    iOS下拉刷新和上拉刷新 在iOS开发中,我们经常要用到下拉刷新和上拉刷新来加载新的数据,当前这也适合分页。iOS...

  • 下拉刷新和上拉加载更多的原理

    *** 下拉刷新和上拉加载更多的原理*** 一、介绍 在做App开发时,很多时候会用到下拉刷新和上拉加载,比如我比...

  • IOS UI篇-仿微博下拉刷新和上拉加载

    前言 关于下拉刷新和上拉加载,以前开发都是直接使用第三方MJRefresh,1-2句代码集成,使用方便,省事;最近...

  • Android技能——上拉加载更多

    编写程序时经常会使用到下拉刷新和上拉加载更多。下拉刷新很简单,使用Google的SwipRefreshLayout...

  • MJRefresh 源码学习笔记

    1.前言 MJRefresh 是日常 iOS 开发中使用频率比较高的一款下拉刷新/上拉加载更多的第三方控件,平时似...

  • iOS MJRefresh 刷新文字重叠

    被提BUG, 关于MJRefresh 在某个页面下 下拉刷新和上拉加载 出现文字重叠的情况 如图 由于时间原因,...

  • 2018-05-28

    对MJRefresh.h再次封装,上拉加载更多,下拉刷新 在公司称着没事的时间随便写写,自己对MJRefresh再...

  • MJRefresh

    下拉刷新和上拉加载地址

网友评论

      本文标题:iOS MJRefresh 下拉刷新和上拉加载更多的使用

      本文链接:https://www.haomeiwen.com/subject/wqxkqjtx.html