欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

动画播放(UIImageView)

程序员文章站 2024-01-19 12:32:46
...

标签:帧动画、transform
帧动画
通过有序的多张图片快速的连续播放来实现动画效果

1.首先判断UIImageView上是否已经在播放动画: 
    if (self.imageView.isAnimating) { //如果正在播放返回的是YES 
        return;
    }

2.将图片保存到数组中: 
        [imageArray addObject:img];

3.通过设置ImageView的属性实现动画播放:
    //1.把图片数组赋值给imageView
    self.imageView.animationImages = imageArray;
    //2.设置动画的播放次数
    self.imageView.animationRepeatCount = 1;
    //3.设置动画的播放时间
    self.imageView.animationDuration = imageArray.count * 0.07;
    //4.开始播放动画
    [self.imageView startAnimating]; 
//    5.[self.imageView stopAnimating];  也有结束播放动画

4.播放结束后清空ImageView中保存动画数组的animationImages属性:(缓存优化)
    [self.imageView performSelector:@selector(setAnimationImages:) withObject:nil afterDelay:self.imageView.animationDuration];

transform属性:

1.旋转:
        CGAffineTransformMakeRotation(弧度值)
    
        CGAffineTransformRotate(transform属性,弧度值)
 2.移动:
        CGAffineTransformMakeTranslation(x上移动多少位, y上移动多少位);
 
        CGAffineTransformTranslate(transform属性, x上移动多少位, y上移动多少位);
 3.缩放:
        CGAffineTransformMakeScale(宽的倍数,高的倍数)
 
        CGAffineTransformScale(transform属性,宽的倍数,高的倍数)

 恢复到没有任何形变的样子:
        CGAffineTransformIdentity

合理的利用transform属性,可以轻松达到全屏播放视频的效果