天天看點

iOS UI入門——使用Objective-C和Swift實作UIImageView顯示圖檔

1.單張圖檔的顯示

  • Objective-C代碼:
-(void)setupImageView{
    //初始化一個imageView
    UIImageView * testImageView = [[UIImageView alloc] initWithFrame:self.view.frame];
    //設定imageView的圖檔
    testImageView.image = [UIImage imageNamed:@"image_PearlOfTheOrient"];
    //設定圖檔顯示模式,具體可以command contentMode看詳細屬性,一般用來處理圖檔的變形問題
    testImageView.contentMode = UIViewContentModeScaleAspectFit;
    //将Label添加到父self.view上來做顯示
    [self.view addSubview:testImageView];
}
           
  • Swift代碼:
func setupImageView() {
        //初始化一個imageView
        let testImageView  = UIImageView.init(frame: self.view.frame)
        //設定imageView的圖檔
        testImageView.image = UIImage.init(named: "image_PearlOfTheOrient")
        //設定圖檔顯示模式,具體可以command contentMode看詳細屬性,一般用來處理圖檔的變形問題
        testImageView.contentMode = .scaleAspectFit
        //将Label添加到父self.view上來做顯示
        self.view.addSubview(testImageView)
    }
           
  • 效果圖:
    iOS UI入門——使用Objective-C和Swift實作UIImageView顯示圖檔

2.圖檔序列動态效果顯示

  • Objective-C代碼:
-(void)setupAnimationImageView{
    //初始化一個imageView
    UIImageView * testImageView = [[UIImageView alloc] initWithFrame:CGRectMake(, , , )];
    //設定imageView的中心位置
    testImageView.center = self.view.center;
    //擷取圖檔序列數組
    NSMutableArray * imagesArray = [NSMutableArray array];
    for (int i = ; i < ; i ++) {
        UIImage * image = [UIImage imageNamed:[NSString stringWithFormat:@"gif_ferriswheel%d",i]];
        [imagesArray addObject:image];
    }
    //設定動畫數組
    testImageView.animationImages = imagesArray;
    //設定動畫時長
    testImageView.animationDuration = ;
    //設定動畫播放次數,0表示無限次
    testImageView.animationRepeatCount = ;
    //開始動畫
    [testImageView startAnimating];
    //将Label添加到父self.view上來做顯示
    [self.view addSubview:testImageView];
}
           
  • Swift代碼:
func setupAnimationImageView() {
        //初始化一個imageView
        let testImageView = UIImageView.init(frame: CGRect.init(x: , y: , width: , height: ))
        //設定imageView的中心位置
        testImageView.center = self.view.center
        //擷取圖檔序列數組
        let imagesArray = NSMutableArray.init()
        for i in . {
            let image = UIImage.init(named: String.init(format: "gif_ferriswheel%d", i))
            imagesArray.add(image as Any)
        }
        //設定動畫數組
        testImageView.animationImages = imagesArray as? [UIImage]
        //設定動畫時長
        testImageView.animationDuration = 
        //設定動畫播放次數,表示無限次
        testImageView.animationRepeatCount = 
        //開始動畫
        testImageView.startAnimating()
        //将Label添加到父self.view上來做顯示
        self.view.addSubview(testImageView)
    }
           
  • 效果圖:
    iOS UI入門——使用Objective-C和Swift實作UIImageView顯示圖檔