UI基礎視圖----UIImageView總結


  UIImageView和UILabel一樣,也是UIKit框架中非常常用的視圖類。繼承關系和UILabel完全一致(都是繼承於UIView),功能也相似(用戶交互都默認為關,主要用於展示),只不過UIImageView用於展示圖片,UILabel用於展示文字。

  UIImageView主要用於展示兩種圖片,一種是靜態圖片,也是最基礎的用法,另一種是動態圖片(一組圖片產生的動畫效果)。所以UIImageView除了可以使用從UIView繼承下來的動畫效果外,還可以使用自己的動畫效果(顯然自己的更常用)。

  所以,UIImageView主要功能就是展示圖片,展示類型有兩種,一種是單獨一張圖片(靜態),一種是一組圖片(動態),可以使用UIImageView制作一個gif動圖。

0:准備圖片

  首先添加三張本地圖片

1 /**
2  *  0:准備圖片
3  */
4 - (void)prepareImage
5 {
6     self.image1 = [UIImage imageNamed:@"apple1"];
7     self.image2 = [UIImage imageNamed:@"apple2"];
8     self.image3 = [UIImage imageNamed:@"apple3"];
9 }

 

1:靜態圖片展示

  靜態圖片其實就是給UIImageView的image屬性賦值。

  注意:在實例化UIImageView的時候,使用initWithImage:進行實例化,或者后面設置image屬性,而不再設置imageView的frame,imageView直接使用image的frame,那么,有兩種情況:一是image本身比較小,那么就會按照image的frame大小顯示。而如果image的frame太大,可能就會不顯示,遇到這個問題可以使用frame初始化再設置屬性image。

 1 /**
 2  *  1:靜態圖片展示
 3  */
 4 - (void)staticImageShow
 5 {
 6     //1:UIImageView自己獨有的初始化方法
 7     self.imageView1 = [[UIImageView alloc] initWithImage:self.image1];
 8     //2:這里imageView1的frame如果不設置,imageView1的frame就會默認為image1的frame,(在image1的frame小於屏幕的情況下),根據需要設置
 9     self.imageView1.frame = CGRectMake(100, 100, 100, 100);//設置frame屬性,從UIView繼承過來的屬性
10     self.imageView1.image = self.image2;//imageView1的圖片可以通過image后期進行設置
11     //3:用戶交互屬性
12     self.imageView1.userInteractionEnabled = YES;//,默認是NO,如果需要加手勢要設置為YES
13     [self.view addSubview:self.imageView1];//父視圖來添加子視圖
14 }

 

2:動態圖片展示

  其實就是加了一組圖片到數組里,然后設置動畫時間和重復次數,然后開啟動畫。

  注意:動畫必須手動開啟。

 1 /**
 2  *  2:動態圖片展示
 3  */
 4 - (void)dynamicImageShow
 5 {
 6     //1:使用從UIView繼承來的方法實例化
 7     self.imageView2 = [[UIImageView alloc] initWithFrame:CGRectMake(100, 300, 100, 100)];
 8     //2:設置屬性animationImages,是一個數組
 9     self.imageView2.animationImages = @[self.image1, self.image2, self.image3];
10     self.imageView2.animationRepeatCount = 100;//動畫重復次數,默認是0(切記:0是無窮大),默認會無限重復
11     self.imageView2.animationDuration = 1;//設置一次動畫持續的時間。
12     [self.imageView2 startAnimating];//開啟動畫,動畫必須手動開啟
13 //    [self.imageView2 stopAnimating];//關閉動畫,可以在需要的時候手動關閉
14     [self.view addSubview:self.imageView2];
15 }

 

最終顯示效果為:上面一張靜態圖,下面一張類似於gif的動態圖。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM