一、概述
git
MJRefresh是iOS開發中最經常使用的開源框架之一,主要用於UITanleView的下拉、上拉刷新。本框架兼容iOS6\iOS7,iPhone\iPad橫豎屏,目前大多數商業app中都用到了這個框架。github
框架地址:https://github.com/CoderMJLee/MJRefreshapp
二、使用方法框架
(1)下載框架,導入頭文件
spa
#import "MJRefresh.h"
(2)添加頭部控件的方法
代理
[self.tableView addHeaderWithTarget:self action:@selector(headerRereshing)];
或者
code
[self.tableView addHeaderWithCallback:^{ }];
(3)添加尾部控件的方法
開發
[self.tableView addFooterWithTarget:self action:@selector(footerRereshing)];
或者
get
[self.tableView addFooterWithCallback:^{ }];
(4)能夠在MJRefreshConst.h和MJRefreshConst.m文件中自定義顯示的文字內容和文字顏色
(5)添加下拉刷新it
MJRefreshHeaderView *header = [MJRefreshHeaderView header]; header.scrollView = self.tableView; header.delegate = self;
(6)添加上拉加載更多
MJRefreshFooterView *footer = [MJRefreshFooterView footer]; footer.scrollView = self.tableView; footer.delegate = self;
(7)監聽刷新狀態
方法一,設置代理delegate,一旦控件進入刷新狀態,就會調用下面代理方法:
- (void)refreshViewBeginRefreshing:(MJRefreshBaseView *)refreshView { if ([refreshView isKindOfClass:[MJRefreshFooterView class]]) { // 上拉加載更多 } else { // 下拉刷新 } }
方法二,設置block回調:
header.beginRefreshingBlock = ^(MJRefreshBaseView *refreshView) { };
footer.beginRefreshingBlock = ^(MJRefreshBaseView *refreshView) { };
(8)進入刷新狀態
[self.tableView headerBeginRefreshing]; [self.tableView footerBeginRefreshing];
(9)結束刷新
[self.tableView headerEndRefreshing]; [self.tableView footerEndRefreshing];
(10)若是須要,能夠在MJRefreshBaseView.h中經過控制NeedAudio宏開啓音頻功能。