zoukankan      html  css  js  c++  java
  • iOS中的几种动画模式(iOS动画)

    iOS中有许许多多的动画方式今天先给大家介绍最简单的两种:头尾式动画和帧动画

    一. 所谓头尾式动画,顾名思义,就是在需要动画的代码开始的时候设置开始动画,在需要动画的代码结束的时候结束动画,这就是简单的头尾式动画,二话不多说,上代码:

     
        //开始动画
        [UIView beginAnimations:nil context:nil];
        //设置动画延迟执行时间
        [UIView setAnimationDelay:2];
        //设置动画执行过程需要时间
        [UIView setAnimationDuration:2];
    //这里加需要动画的代码 //结束动画 [UIView commitAnimations];

    二. 帧动画,相信对做flash的人来说帧动画相当熟悉,相信大家都记得小时候看过的动画,那些动画就是由一页一页的图案组成,然后快速的进行切换,在我们的视觉感官上就形成了动画!帧动画需要很多一帧一帧的图片.

    @interface ViewController ()
    @property (nonatomic,weak)UIImageView *imgView;
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
       
        //imgView.animationImages = "装有帧动画需要的图片的数组"
        //设置动画重复次数
        self.imgView.animationRepeatCount = 1;
        
        //设置动画播放时间(2秒)
        self.imgView.animationDuration = 2;
        
        //开始动画
        [self.imgView startAnimating];
        
        //但是这种动画需要占用很大内存,所以在播放完毕后要清空内存,但是清空内存的时候要加延迟时间,否则动画还没有播放就已经释放了
        CGFloat delay = self.imgView.animationDuration +1.0;
        [self performSelector:@selector(clearCache) withObject:nil afterDelay:delay];
        
    }
    - (void)clearCache{
        self.imgView.animationImages = nil;
    }

     三. block动画:

    [UIView animateWithDuration:1.5 animations:^{
          //想要做的动画代码
        } completion:^(BOOL finished) {
           //当动画执行完毕后需要执行的代码
       }];
    全身心修练iOS
  • 相关阅读:
    ABP文档翻译--值对象
    (转)SqlServer 数据库同步的两种方式 (发布、订阅),主从数据库之间的同步
    Sql Service 的job作业新建过程
    Python --- pyinstaller --- 打包成exe并更换图标
    基于树形检测器的多标志识别
    记录 TypeError: render() got an unexpected keyword argument 'renderer' 错误
    Dockerfile 关键字
    Go new 和 make的区别
    Go的数据类型
    Mac Go 环境变量配置
  • 原文地址:https://www.cnblogs.com/ZMiOS/p/4803764.html
Copyright © 2011-2022 走看看