iOS 动画

原创 2015年11月19日 21:21:31

实现动画的方法:

首尾式动画,不容易监听动画完成时间,而且不容易实现动画嵌套

         

label.alpha = 0.0;
   [UIView beginAnimations:nil context:nil];
   [UIView setAnimationDuration:1.0f];
   label.alpha = 1.0;
   [UIView commitAnimations];

 

在应用程序管理这个小应用中,当点击下载按钮时,需要label的alpha值从0.0

1.0,然后再从1.00.0,显然首尾式动画并不能满足要求。

然后我想到用这个方法(这个方法仍然无法实现):

[UIView animateWithDuration:1 animations:^{
        NSLog(@"我(label)的alpha值变成了1啦");
        label.alpha = 1;
   }];
    [UIView animateWithDuration:1 animations:^{
        NSLog(@"我(label)的alpha值变成了0啦");
        label.alpha = 0;
        [label removeFromSuperview];
   }];


首先执行上面的动画,然而上面的动画还没有开始执行的时候,下面的动画已

经开始执行了,因为程序并不是等到上一个动画执行完后才开始执行下面的动

画,所以当我们还没看到动画执行,这个label就已经被删除了([label removeFromSuperview];)。

然后开始采用下面的一种方法:

[UIView animateWithDuration:1 animations:^{
        NSLog(@"开始执行动画");
        label.alpha = 1.0;
    } completion:^(BOOL finished) {
        [UIView animateWithDuration:1 animations:^{
            NSLog(@"我(label)的alpha值又变成0.0啦");
            label.alpha = 0.0;
        } completion:^(BOOL finished) {
            NSLog(@"动画完成,删除label");
            [label removeFromSuperview];
       }];
   }];
    NSLog(@"------------");

我尝试着去打印输出,输出结果如下:


虽然这种方法可行,但是,目前,我还不知道为什么是这样!等以后知道了,再补充说明


IOS动画库汇总

Core Animation笔记,基本的使用方法 - Core Animation笔记,基本的使用方法:1.基本动画,2.多步动画,3.沿路径的动画,4.时间函数,5.动画组。 awesome-io...
  • fishmai
  • fishmai
  • 2017年06月23日 09:07
  • 1602

【IOS动画】视图左右抖动动画效果

CABasicAnimation* shake = [CABasicAnimation animationWithKeyPath:@"transform.translation.x"]; sh...
  • cl61917380
  • cl61917380
  • 2014年07月07日 16:15
  • 4120

ios 动画(抖动,入场动画,组动画)

//1.图片抖动 //使用帧动画 设置旋转 路径 CAKeyframeAnimation *rotationAnii = [CAKeyframeAnimation animation]; rotat...
  • liwateryi
  • liwateryi
  • 2015年12月17日 20:56
  • 543

史上最全-iOS开发中所用的动画 效果看这里就够了

前言 上次总结了多线程的用法,这次再复习下iOS动画的东西.这次依然先是以api为主,因为好多人还是api好多的东西还不会用.然后中间穿插些例子,例子和代码文章中都会有.因为篇幅比较长,先列一下大纲....
  • whjay520
  • whjay520
  • 2016年12月09日 14:11
  • 6364

iOS-利用UIBezierPath和CAAnimation制作路径动画

继上篇的心跳动画,今天实现一个根据心跳路径实现一个路径动画,让某一视图沿着路径进行运动.核心代码1-首先通过 drawRect 绘制心形路径- (void)drawRect:(CGRect)rect ...
  • Mazy_ma
  • Mazy_ma
  • 2017年02月16日 10:47
  • 3391

iOS开发 使用NSTimer做循环动画

NStimer是个强大的时间定时器,至于它强大到哪我也不知道。
  • u013705387
  • u013705387
  • 2014年04月24日 15:41
  • 1768

IOS中的几种动画的实现方式

在我们开发中,经常会遇到一些需要动画特效的展示,下面来总结一些开发中常见的动画实现方式 第一,序列帧动画,通过大量的UIImage来展示动画效果,网络请求等待加载动画效果 核心代码: //创建可...
  • anywhereIOS
  • anywhereIOS
  • 2016年04月11日 00:49
  • 3797

iOS开发-组合动画CAAnimationGroup

先在自定义的ViewController里声明定义一个UIImageView 1 @property (nonatomic,retain) UIImageView *imgView; 1 @sy...
  • u012416493
  • u012416493
  • 2013年11月07日 13:42
  • 2990

iOS个人整理38-贝塞尔曲线和帧动画结合

贝塞尔曲线 帧动画 //关键帧动画 -(void)layerKeyFrameAnimation { //画一个path UIBezierPath *path = [UIBezier...
  • u010330109
  • u010330109
  • 2016年04月09日 10:24
  • 6008

iOS 大头针从天而降动画

//自定义大头针不能使用系统的MKPinAnnotationView来添加从天儿降的效果,只能自己添加动画 #pragma mark MKMapViewDelegate - (void)map...
  • jeffasd
  • jeffasd
  • 2016年01月06日 17:38
  • 1375
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS 动画
举报原因:
原因补充:

(最多只允许输入30个字)