iOS利用MJRefresh实现自定义刷新动画效果

编辑: admin 分类: 苹果教程 发布时间: 2022-03-30 来源:互联网

本文主要介绍iOS 利用MJRefresh实现自定义动画的上拉刷新下拉加载效果,一般的类型(包括更新时间与loading图案)这里不做介绍.

要想实现此功能,首先得有一套load的图片数组.

接下来就是实现过程:

引入头文件:

#import "MJRefresh.h"
//自定义一个方法实现
- (void)prepareRefresh
{
 NSMutableArray *headerImages = [NSMutableArray array];
 for (int i = 1; i <= 4; i++) {
  UIImage *image = [UIImage imageNamed:[NSStringstringWithFormat:@"topload%d",i]];
  [headerImages addObject:image];
 }
 MJRefreshGifHeader *gifHeader = [MJRefreshGifHeaderheaderWithRefreshingBlock:^{
//下拉刷新要做的操作.
 }];
 gifHeader.stateLabel.hidden = YES;
 gifHeader.lastUpdatedTimeLabel.hidden = YES;
 [gifHeader setImages:@[headerImages[0]]forState:MJRefreshStateIdle];
 [gifHeader setImages:headerImages forState:MJRefreshStateRefreshing];
 _tableView.header = gifHeader;
 NSMutableArray *footerImages = [NSMutableArray array];
 for (int i = 1; i <= 4; i++) {
  UIImage *image = [UIImage imageNamed:[NSStringstringWithFormat:@"footerload%d",i]];
  [footerImages addObject:image];
 }
 MJRefreshAutoGifFooter *gifFooter = [MJRefreshAutoGifFooterfooterWithRefreshingBlock:^{
//上拉加载需要做的操作.
 }];
 gifFooter.stateLabel.hidden = YES;
 gifFooter.refreshingTitleHidden = YES;
 [gifFooter setImages:@[footerImages[0]]forState:MJRefreshStateIdle];
 [gifFooter setImages:footerImages forState:MJRefreshStateRefreshing];
 _tableView.footer = gifFooter;
}

最后记得在数据加载完成时停掉loading

  [_tableView.header endRefreshing];//下拉刷新数据完成时写上
  [_tableView.footer endRefreshing];//上拉加载数据完成时写上

以上所述是小编给大家介绍的iOS利用MJRefresh实现自定义刷新动画效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对海外IDC网网站的支持!

【文章转自高防服务器 http://www.558idc.com 复制请保留原URL】