swift

1、创建

var imageView = UIImageView()//初始化

2、图片的显示及图片的改变

imageView = UIImageView(image: UIImage(named: "hgl.jpeg"))
imageView.frame = CGRect(x:20, y:20, 100, height:100)
self.view.addSubview(imageView)

3、实现动画的播放

UIImageView中提供了存储多张图片来创建动画的功能,具体做法是,在animationImages属性中设置一个图片数组,然后使用startAnimating方法开始动画,最后用stopAnimating方法停止动画。同时,使用animationDuration属性中可以设置动画每帧切换的速度(秒)。

//使用图像控件实现动画播放
        imageView.animationImages = [UIImage(named:"hgl.jpeg")!,UIImage(named:"11.jpg")!]
        //设置每个0.5秒变化一次
        imageView.animationDuration = 0.5
        
        //保持图片比例,默认UIImageView会拉伸图片使其沾满整个UIImageView,如果不想让图片变形,可以将contentMode设置为Aspect Fit
        imageView.contentMode = .scaleAspectFit

动画的调用

override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)
        imageView.startAnimating()
    }
    
    override func viewWillDisappear(animated: Bool) {
        
        super.viewWillAppear(animated)
        imageView.stopAnimating()
        
    }

5、保持图片的比例

默认UIImageView会拉伸图片使其占满整个UIImageView,如果不想让图片变形,可以将ContentMode设置为Aspect Fit。

imageView.contentMode = .scaleAspectFit

效果如下

原文地址:https://www.cnblogs.com/hero11223/p/5692618.html