ios基于MJRefresh實(shí)現(xiàn)上拉刷新和下拉加載動(dòng)畫(huà)效果
本文介紹了ios基于MJRefresh實(shí)現(xiàn)上拉刷新和下拉加載動(dòng)畫(huà)效果,分享給大家,具體如下:
目錄
1、 頭部刷新動(dòng)畫(huà)
2、尾部刷新動(dòng)畫(huà)
頭部刷新動(dòng)畫(huà)
#import <MJRefresh/MJRefresh.h> @interface HZNormalHeader : MJRefreshGifHeader @end
#import "HZNormalHeader.h" @implementation HZNormalHeader #pragma mark - 重寫(xiě)父類(lèi)的方法 - (void)prepare{ [super prepare]; // 設(shè)置普通狀態(tài)的動(dòng)畫(huà)圖片 NSMutableArray *idleImages = [NSMutableArray array]; for (NSUInteger i = 1; i<=60; i++) { UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"dropdown_anim__000%zd", i]]; [idleImages addObject:image]; } [self setImages:idleImages forState:MJRefreshStateIdle]; // 設(shè)置即將刷新?tīng)顟B(tài)的動(dòng)畫(huà)圖片(一松開(kāi)就會(huì)刷新的狀態(tài)) NSMutableArray *refreshingImages = [NSMutableArray array]; for (NSUInteger i = 1; i<=3; i++) { UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"dropdown_loading_0%zd", i]]; [refreshingImages addObject:image]; } [self setImages:refreshingImages forState:MJRefreshStatePulling]; // 設(shè)置正在刷新?tīng)顟B(tài)的動(dòng)畫(huà)圖片 [self setImages:refreshingImages forState:MJRefreshStateRefreshing]; //隱藏時(shí)間 self.lastUpdatedTimeLabel.hidden = NO; //隱藏狀態(tài) self.stateLabel.hidden = NO; }
實(shí)現(xiàn)部分
self.tableView.mj_header = [HZNormalHeader headerWithRefreshingBlock:^{ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ [self.tableView.mj_header endRefreshing]; }); }];
尾部刷新動(dòng)畫(huà)
#import <MJRefresh/MJRefresh.h> @interface XZZNormalFooter : MJRefreshAutoGifFooter @end
#import "XZZNormalFooter.h" @implementation XZZNormalFooter #pragma mark - 重寫(xiě)父類(lèi)的方法 - (void)prepare{ [super prepare]; // 設(shè)置普通狀態(tài)的動(dòng)畫(huà)圖片 NSMutableArray *idleImages = [NSMutableArray array]; for (NSUInteger i = 1; i<=60; i++) { UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"dropdown_anim__000%zd", i]]; [idleImages addObject:image]; } [self setImages:idleImages forState:MJRefreshStateIdle]; // 設(shè)置即將刷新?tīng)顟B(tài)的動(dòng)畫(huà)圖片(一松開(kāi)就會(huì)刷新的狀態(tài)) NSMutableArray *refreshingImages = [NSMutableArray array]; for (NSUInteger i = 1; i<=3; i++) { UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"dropdown_loading_0%zd", i]]; [refreshingImages addObject:image]; } [self setImages:refreshingImages forState:MJRefreshStatePulling]; // 設(shè)置正在刷新?tīng)顟B(tài)的動(dòng)畫(huà)圖片 [self setImages:refreshingImages forState:MJRefreshStateRefreshing]; //隱藏時(shí)間 // self.lastUpdatedTimeLabel.hidden = NO; /*隱藏*/ self.refreshingTitleHidden = YES; //隱藏狀態(tài) self.stateLabel.hidden = YES; } @end
實(shí)現(xiàn)部分
self.tableView.mj_footer = [XZZNormalFooter footerWithRefreshingBlock:^{ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ [self.tableView.mj_footer endRefreshing]; }); }];
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
iOS 中Swift仿微信添加提示小紅點(diǎn)功能(無(wú)數(shù)字)
這篇文章主要介紹了iOS 中Swift仿微信添加提示小紅點(diǎn)功能(無(wú)數(shù)字),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-05-05iOS中關(guān)于Taptic-Engine震動(dòng)反饋的深入解析
這篇文章主要給大家介紹了關(guān)于iOS中關(guān)于Taptic-Engine震動(dòng)反饋的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-11-11iOS 實(shí)現(xiàn)類(lèi)似QQ分組樣式的兩種方式
這篇文章主要介紹了iOS 實(shí)現(xiàn)類(lèi)似QQ分組樣式的兩種方式,思路很簡(jiǎn)單,對(duì)模型數(shù)據(jù)操作或則控制界面顯示,需要的朋友可以參考下2017-07-07iOS開(kāi)發(fā)教程之識(shí)別圖片中二維碼功能的實(shí)現(xiàn)
長(zhǎng)按識(shí)別二維碼這個(gè)功能相信對(duì)大家來(lái)說(shuō)都不陌生,最近工作中就遇到了這個(gè)需求,所以下面這篇文章主要給大家介紹了關(guān)于利用iOS識(shí)別圖片中二維碼的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-07-07iOS 二維碼掃描相關(guān)功能實(shí)現(xiàn)
這篇文章主要介紹了iOS 二維碼掃描相關(guān)功能實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-09-09