IOS中UIImageView方法實現(xiàn)簡單動畫
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于成都做網(wǎng)站、網(wǎng)站建設、雞西網(wǎng)絡推廣、成都小程序開發(fā)、雞西網(wǎng)絡營銷、雞西企業(yè)策劃、雞西品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學生創(chuàng)業(yè)者提供雞西建站搭建服務,24小時服務熱線:18982081108,官方網(wǎng)址:www.chinadenli.net
查閱UIImageView文檔時,發(fā)現(xiàn)UIImageView有一組關于動畫的方法/參數(shù),可以實現(xiàn)簡單的動畫。包括:
animationImages; highlightedAnimationImages; animationDuration; animationRepeatCount; - startAnimating; - stopAnimating; - isAnimating;
上面的這組方法很簡單,一目了然:設置好動畫的圖片、動畫時間、重復次數(shù),就可以開始動畫了。
下面用代碼舉個例子。
上面這張圖,分成16份,播放出來:
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];
動畫如下圖所示:
動畫勉強可以,用來播放簡單動畫差強人意。
然而這種方法問題不少。
占資源:數(shù)十張圖片,無論是放在Bundle里,還是加載到內存中,對于這樣一個簡單動畫來說,似乎都占地兒太多了。
效果不咋地:主要也還是圖片數(shù)量不足;然而如果圖片數(shù)量太多,加上速度要求過快,參見問題1;
無法實現(xiàn)細膩的、動態(tài)的動畫:只能實現(xiàn)一些簡單粗暴的動畫,比如自定義的加載動畫;
而且,還有更好的替代方式,比如直接播放gif動畫,簡單方便。
對于細膩復雜的動畫,就需要調用Core Animation了。
綜上,這種方法是個雞肋。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
標題名稱:IOS中UIImageView方法實現(xiàn)簡單動畫
路徑分享:http://www.chinadenli.net/article18/geghgp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供外貿網(wǎng)站建設、、響應式網(wǎng)站、品牌網(wǎng)站建設、網(wǎng)站導航、品牌網(wǎng)站設計
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)