IOS中UIImageView方法實(shí)現(xiàn)簡(jiǎn)單動(dòng)畫(huà)
IOS中UIImageView方法實(shí)現(xiàn)簡(jiǎn)單動(dòng)畫(huà)
查閱UIImageView文檔時(shí),發(fā)現(xiàn)UIImageView有一組關(guān)于動(dòng)畫(huà)的方法/參數(shù),可以實(shí)現(xiàn)簡(jiǎn)單的動(dòng)畫(huà)。包括:
animationImages; highlightedAnimationImages; animationDuration; animationRepeatCount; - startAnimating; - stopAnimating; - isAnimating;
上面的這組方法很簡(jiǎn)單,一目了然:設(shè)置好動(dòng)畫(huà)的圖片、動(dòng)畫(huà)時(shí)間、重復(fù)次數(shù),就可以開(kāi)始動(dòng)畫(huà)了。
下面用代碼舉個(gè)例子。
上面這張圖,分成16份,播放出來(lái):
self.imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"test.jpg"]]; [self.view addSubview:self.imageView]; self.imageView.frame = CGRectMake(0, 0, 150, 450); self.imageView.animationImages = @[[UIImage imageNamed:@"f-0.jpg"], [UIImage imageNamed:@"f-1.jpg"], [UIImage imageNamed:@"f-2.jpg"], [UIImage imageNamed:@"f-3.jpg"], [UIImage imageNamed:@"f-4.jpg"], [UIImage imageNamed:@"f-5.jpg"], [UIImage imageNamed:@"f-6.jpg"], [UIImage imageNamed:@"f-7.jpg"], [UIImage imageNamed:@"f-8.jpg"], [UIImage imageNamed:@"f-9.jpg"], [UIImage imageNamed:@"f-10.jpg"], [UIImage imageNamed:@"f-11.jpg"], [UIImage imageNamed:@"f-12.jpg"], [UIImage imageNamed:@"f-13.jpg"], [UIImage imageNamed:@"f-14.jpg"], [UIImage imageNamed:@"f-15.jpg"],]; self.imageView.animationDuration = 5.0; self.imageView.animationRepeatCount = 0; [self.imageView startAnimating];
動(dòng)畫(huà)如下圖所示:
動(dòng)畫(huà)勉強(qiáng)可以,用來(lái)播放簡(jiǎn)單動(dòng)畫(huà)差強(qiáng)人意。
然而這種方法問(wèn)題不少。
占資源:數(shù)十張圖片,無(wú)論是放在Bundle里,還是加載到內(nèi)存中,對(duì)于這樣一個(gè)簡(jiǎn)單動(dòng)畫(huà)來(lái)說(shuō),似乎都占地兒太多了。
效果不咋地:主要也還是圖片數(shù)量不足;然而如果圖片數(shù)量太多,加上速度要求過(guò)快,參見(jiàn)問(wèn)題1;
無(wú)法實(shí)現(xiàn)細(xì)膩的、動(dòng)態(tài)的動(dòng)畫(huà):只能實(shí)現(xiàn)一些簡(jiǎn)單粗暴的動(dòng)畫(huà),比如自定義的加載動(dòng)畫(huà);
而且,還有更好的替代方式,比如直接播放gif動(dòng)畫(huà),簡(jiǎn)單方便。
對(duì)于細(xì)膩復(fù)雜的動(dòng)畫(huà),就需要調(diào)用Core Animation了。
綜上,這種方法是個(gè)雞肋。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
- iOS實(shí)現(xiàn)頂部標(biāo)簽式導(dǎo)航欄及下拉分類菜單
- iOS購(gòu)物分類模塊的實(shí)現(xiàn)方案
- IOS 中UIImageView響應(yīng)點(diǎn)擊事件
- iOS UIImageView圖片自動(dòng)拉伸功能
- IOS UI學(xué)習(xí)教程之使用UIImageView控件制作動(dòng)畫(huà)
- iOS開(kāi)發(fā)中UIImageView控件的常用操作整理
- iOS開(kāi)發(fā)中使用Quartz2D繪圖及自定義UIImageView控件
- iOS開(kāi)發(fā)實(shí)現(xiàn)UIImageView的分類
相關(guān)文章
IOS 開(kāi)發(fā)之操作圖庫(kù)自定義控制器
這篇文章主要介紹了IOS 開(kāi)發(fā)之操作圖庫(kù)自定義控制器的相關(guān)資料,需要的朋友可以參考下2017-02-02iOS sqlite對(duì)數(shù)據(jù)庫(kù)的各種操作(日常整理全)
在IOS中使用Sqlite來(lái)處理數(shù)據(jù)。如果你已經(jīng)了解了SQL,那你可以很容易的掌握SQLite數(shù)據(jù)庫(kù)的操作。本文給大家介紹iOS sqlite對(duì)數(shù)據(jù)庫(kù)的各種操作,需要的朋友參考下吧2016-03-03詳解ios中自定義cell,自定義UITableViewCell
本篇文章主要介紹了ios中自定義cell,自定義UITableViewCell,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。2016-12-12iOS開(kāi)發(fā)中使用cocos2d添加觸摸事件的方法
這篇文章主要介紹了iOS開(kāi)發(fā)中使用cocos2d添加觸摸事件的方法,cocos2d是制作iOS游戲的利器,需要的朋友可以參考下2015-10-10iOS開(kāi)發(fā)微信收款到賬語(yǔ)音提醒功能思路詳解
這篇文章主要介紹了iOS開(kāi)發(fā)微信收款到賬語(yǔ)音提醒功能思路詳解,需要的朋友可以參考下2017-09-09iOS表視圖之下拉刷新控件功能的實(shí)現(xiàn)方法
下拉刷新是重新刷新表視圖或列表,以便重新加載數(shù)據(jù),這種模式廣泛用于移動(dòng)平臺(tái),相信大家對(duì)于此也是非常熟悉的,那么iOS是如何做到的下拉刷新呢?下面小編給大家分享iOS表視圖之下拉刷新控件的實(shí)現(xiàn)方法,一起看看吧2017-01-01iOS 無(wú)卡頓同時(shí)使用圓角、陰影和邊框的實(shí)現(xiàn)
這篇文章主要介紹了iOS 無(wú)卡頓同時(shí)使用圓角、陰影和邊框的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01