github上开源项目MJRefresh自定义刷新控件

前言:在项目开发过程中经常有需要进行刷新操作,MJ博主开源的MJRefresh为我们节省了大量的时间。只需要几行代码就可给UITableview,UICollectionview,UISCrollview,UIWebview集成上拉或下拉操作。更强大的是自定义功能,无论产品经理要什么上拉下拉动态效果,MJRefresh带你装逼带你酷炫下拉刷新。先来看看自定义下拉的动态效果。

1 利用cocoapods安装MJRefresh,如果不明白cocoapods使用方法,请参照cocopods安装和使用教程

2 在项目的pch中 #import
<MJRefresh/MJRefresh.h>

3 使用方法

默认的下拉刷新集成

self.tableView.header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
   // 进入刷新状态后会自动调用这个block
}];
或
// 设置回调(一旦进入刷新状态,就调用target的action,也就是调用self的loadNewData方法)
self.tableView.header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];

// 马上进入刷新状态
[self.tableView.header beginRefreshing];

下拉刷新-动画图片

// 设置回调(一旦进入刷新状态,就调用target的action,也就是调用self的loadNewData方法)
MJRefreshGifHeader *header = [MJRefreshGifHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];
// 设置普通状态的动画图片
[header setImages:idleImages forState:MJRefreshStateIdle];
// 设置即将刷新状态的动画图片(一松开就会刷新的状态)
[header setImages:pullingImages forState:MJRefreshStatePulling];
// 设置正在刷新状态的动画图片
[header setImages:refreshingImages forState:MJRefreshStateRefreshing];
// 设置header
self.tableView.header = header;

下拉刷新自定义控件:详细见项目中MJDIYHeader的实现

self.tableView.header = [MJDIYHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];
// 具体实现参考MJDIYHeader.h和MJDIYHeader.m

4 了解MJReresh的其他一些用法

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-19 07:41:33

github上开源项目MJRefresh自定义刷新控件的相关文章

Android 类似于ArcMenu(github上开源项目)的自定义多个按钮视图

最近的项目中有个比较好的开源的多个分享按钮的自定义视图,感觉比较好,所以就研究了下,写了下来.其实这个demo类似于github上开源项目ArcMenu开源项目,项目下载地址为:https://github.com/daCapricorn/ArcMenu. 实现效果图: 1.点击该按钮,五个按钮飞入屏幕: 2.点击五个按钮其中的一个后,改按钮放到直至消失,其余的按钮变小直至消失. 体验感还是挺好的. 再次点击五个按钮飞出屏幕. 好了,下面上源码吧.比较多,但都是些自定义的空间,看两遍就能看懂啦.

参与github上开源项目的大致流程和注意事项

Foreword github是一个很火的代码托管服务网站,可能好多人都想参与一两个项目玩一玩学习一下,但由于是纯英文的网站,可能又会止步于想法上没有动手实践.接下来我就介绍一下参与github上开源项目的大致流程,以及注意的地方.当然这里不会详细介绍git的使用,看懂本文还得需要参考其他资料,学习git的相关使用方法. 大致流程 一.首先需要在github上注册账号并登陆,这个不多说了 二.安装git,到github官网下载安装包.  在这里我用的是github for windows.安装好

新浪微博项目-上下拉刷新控件经验总结

1.下拉控件的刷新:  原理:通过监听UIRefresh下拉刷新控件的拖拽,向服务器发送请求数据,当将获取的数据插入到模型最前面,更新并加载到tableView上时,结束刷新:>创建UIRefresh下拉刷新控件,绑定监听并添加到tableView上面:>当控件下拉时: 1.向服务器发送请求数据,当将获取的数据存入模型,更新并加载到tableView上时,结束刷新: 2.下拉刷新的时间距离上次下拉时间间隔太短时,不再向服务器发送请求数据,直接返回,结束刷新: (补充:当下拉刷新控件同时下拉多次

自定义刷新控件

1.上拉刷新 定义一些属性: 1.是否正在刷新,2.进度,3.scrollview,4.刷新操作block,5.子控件 @property(nonatomic,strong)UIImageView *cloudImageView2; @property(nonatomic,strong)UIImageView *cloudImageView3; ..... @property(nonatomic,assign)CGFloat progress;//进度 @property(nonatomic,a

继承MJRefresh的自定义刷新控件

#import "SLRefreshHeader.h"@implementation SLRefreshHeader - (instancetype)initWithFrame:(CGRect)frame{    if (self = [super initWithFrame:frame]) {        // 自动切换透明度        self.automaticallyChangeAlpha = YES;        // 隐藏时间        self.lastUpd

【Android开源】CircleImageView自定义圆形控件的使用

github地址:https://github.com/hdodenhof/CircleImageView package de.hdodenhof.circleimageview; import edu.njupt.zhb.main.R; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Bi

自定义刷新控件的实现原理

- (void)viewDidLoad { [super viewDidLoad]; UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; button.frame = CGRectMake(0, -30, self.view.bounds.size.width, 30); [button setTitle:@"下拉刷新" forState:UIControlStateNormal]; [self.view a

自定义下拉刷新控件

一.功能效果 1.在很多app中,在信息展示页面,当我们向下拖拽时,页面会加载最新的数据,并有一个短暂的提示控件出现,有些会有加载进度条,有些会记录加载日期.条目,有些还带有加载动画.其基本实现原理都相仿,本文中将探讨其实现原理,并封装出一个简单的下拉刷新控件 2.自定义刷新工具简单的示例 二.系统提供的下拉刷新工具 1.iOS6.0以后系统提供了自己的下拉刷新的控件:UIRefreshControl .例如,refreshControl,作为UITableViewController中的一个属

Android开源项目第一篇——个性化控件(View)篇

本文为那些不错的Android开源项目第一篇——个性化控件(View)篇,主要介绍Android上那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView.ProgressBar及其他如Dialog.Toast.EditText.TableView.Activity Animation等等. Android开源项目系列汇总已完成,包括: Android开源项目第一篇——个性化控件(View)篇 Andr