两朵飘动的小云

原创 2016年08月29日 15:04:14

代码记录:


@interface ViewController (){

    UIImageView * v1;

    UIImageView * v2;

}


@end


@implementation ViewController



- (void)viewDidLoad {

    [super viewDidLoad];

    //[self CloudAinimate];

    [self bgAnimate];

    // Do any additional setup after loading the view, typically from a nib.

}



-(void)bgAnimate {

    if (v1==nil) {

        v1 = [[UIImageView alloc] initWithImage:[UIImage imageNamed: @"cloud"]];

        v2 = [[UIImageView alloc] initWithImage:[UIImage imageNamed: @"cloud2"]];

        v1.alpha = v2.alpha = 0;

        

        v1.frame = CGRectMake(20, -275, 1024, 520);

        v2.frame = CGRectMake(120, -290, 1024, 520);

        

        

        [self.view addSubview:v1];

        [self.view addSubview:v2];

    }

    

    NSLog(@"bganimate");

    float t = 32.0f;

    [UIView animateWithDuration:4.0f delay:0 options:UIViewAnimationOptionCurveLinear animations:^{

        //淡入出现

        v1.frame = CGRectMake(0, -280, 1024, 520);

        v2.frame = CGRectMake(-512+128, -300, 1024, 520);

        v1.transform = CGAffineTransformMakeScale(1.0, 1.0);

        v2.transform = CGAffineTransformMakeScale(1.0, 1.0);

        // v1.alpha = 0.2;

        // v2.alpha = 0.2;

        v1.alpha = 0.8;

        v2.alpha = 0.8;

    } completion:^(BOOL finished){

        [UIView animateWithDuration:t delay:0 options:UIViewAnimationOptionCurveLinear animations:^{

            //v1向放大快速右移动, v2缩小慢速

            v1.frame = CGRectMake(-512, -350, 1024, 520);

            v2.frame = CGRectMake(-1204, -250, 1024, 520);

            v1.transform = CGAffineTransformMakeScale(1.2, 1.2);

            v2.transform = CGAffineTransformMakeScale(0.8, 0.8);

            //  v1.alpha = 0.2;

            //  v2.alpha = 0.2;

            v1.alpha = 0.8;

            v2.alpha = 0.8;

        } completion:^(BOOL finished){

            v2.frame = CGRectMake(1024, -250, 1024, 520);

            [UIView animateWithDuration:t delay:0 options:UIViewAnimationOptionCurveLinear animations:^{

                //v1向淡出, v2慢速

                v1.frame = CGRectMake(-1024, -300, 1024, 520);

                v2.frame = CGRectMake(512-128, -350, 1024, 520);

                v1.transform = CGAffineTransformMakeScale(1.4, 1.4);

                v2.transform = CGAffineTransformMakeScale(1.0, 1.0);

                //v1.alpha = 0.1;

                // v2.alpha = 0.15;

                

                v1.alpha = 0.5;

                v2.alpha = 0.55;

            } completion:^(BOOL finished){

                v1.frame = CGRectMake(1024, -350, 1024, 520);

                v1.transform = CGAffineTransformMakeScale(0.6, 0.6);

                [UIView animateWithDuration:t delay:0 options:UIViewAnimationOptionCurveLinear animations:^{

                    //v1向右侧进入, v2快速左侧移动

                    v1.frame = CGRectMake(512, -300, 1024, 520);

                    v2.frame = CGRectMake(0, -300, 1024, 520);

                    v1.transform = CGAffineTransformMakeScale(0.8, 0.8);

                    v2.transform = CGAffineTransformMakeScale(1.2, 1.2);

                    // v1.alpha = 0.15;

                    // v2.alpha = 0.1;

                    

                    v1.alpha = 0.5;

                    v2.alpha = 0.55;

                } completion:^(BOOL finished){

                    

                    [UIView animateWithDuration:t delay:0 options:UIViewAnimationOptionCurveLinear animations:^{

                        //v1向右侧进入, v2快速左侧移动

                        v1.frame = CGRectMake(20, -250, 1024, 520);

                        v2.frame = CGRectMake(-512+108, -350, 1024, 520);

                        v1.transform = CGAffineTransformMakeScale(0.9, 0.9);

                        v2.transform = CGAffineTransformMakeScale(1.1, 1.1);

                        // v1.alpha = 0.2;

                        //v2.alpha = 0.1;

                        v1.alpha = 0.8;

                        v2.alpha = 0.4;

                    } completion:^(BOOL finished){

                        // if (__userToken) return;

                       

                    }];

                }];

                

            }];

        }];

    }];

    

    

}



-(void)CloudAinimate

{

    if (v1==nil) {

        v1 = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cloud.png"]];

        v2 = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cloud2.png"]];

        v1.alpha = v2.alpha = 0;

        

        v1.frame = CGRectMake(0, 0, 500, 300);

        v2.frame = CGRectMake(0, 0, 500, 400);

        

        

        [self.view addSubview:v1];

        [self.view addSubview:v2];

        

        [UIView animateWithDuration:4.0f delay:0 options:UIViewAnimationOptionCurveLinear animations:^{

            

            v1.alpha = 1;

            v2.alpha = 1;

        } completion:^(BOOL finished){

            

            

        }];

        

        

    }

    

    v1.alpha = 1;

    v2.alpha = 1;

    

    NSLog(@"CloudAinimate");

    [UIView animateWithDuration:40.0f delay:0 options:UIViewAnimationOptionCurveLinear animations:^{

        //淡入出现

        

        CGRect t = v1.frame;

        if( t.origin.x == 0 )

        {

            v1.frame = CGRectMake(-1024, 300, 1024, 768);

            v2.frame = CGRectMake(0, 300, 1024, 768);

        }

        else

        {

            v1.frame = CGRectMake(0, 300, 1024, 768);

            v2.frame = CGRectMake(-1024, 300, 1024, 768);

        }

    }completion:^(BOOL finished)

     {

         CGRect t = v1.frame;

         if(t.origin.x == -1024 )

         {

             v1.frame = CGRectMake(1024, 300, 1024, 768);

         }

         else

         {

             v2.frame = CGRectMake(1024, 300, 1024, 768);

             

         }

         

     }];

    

    

}


- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

@end



版权声明:本文为博主原创文章,未经博主允许不得转载。

BZOJ 3007 拯救小云公主 二分答案+对偶图

题目大意:给定一个矩形和矩形内的一些点,求一条左下角到右上角的路径,使所有点到这条路径的最小距离最大 最小距离最大,果断二分答案 现在问题转化成了给定矩形中的一些圆形障碍物求左下角和右上角是否连通...
  • PoPoQQQ
  • PoPoQQQ
  • 2015年03月12日 17:36
  • 1906

窗口中一直飘动的广告效果

 下面代码是一个漂浮广告效果,请把IMG的SRC改成你自己电脑上的一张图片的地址。DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN...
  • xiao_jun_0820
  • xiao_jun_0820
  • 2007年09月27日 22:41
  • 2973

bzoj3007 拯救小云公主

SPFA好题
  • AaronGZK
  • AaronGZK
  • 2016年04月13日 00:13
  • 3386

【shaderforge】 旗帜飘动

旗帜飘动效果 => 实现原理 利用正弦曲线实现平滑的起伏效果: 1. 时间是稳步增加的数值,如果给时间节点加上顶点的位置信息,同一时间不同位置的数据就有了差异性,将时间加上位置偏移量作为s...
  • v_xchen_v
  • v_xchen_v
  • 2017年11月07日 23:23
  • 537

jquery实现云朵飘动

每天一个小动画。
  • studyrzy
  • studyrzy
  • 2014年07月07日 11:56
  • 1595

JS的飘动窗口特效

http://www.pkvs.com" target="_blank">http://www.pkvs.com/texiao/images/logo.gif" border="0">var xPos...
  • yzj_000
  • yzj_000
  • 2007年11月07日 14:04
  • 3550

【BZOJ 2705】 [SDOI2012]Longge的问题

hzwer太神啦~~~ k为n的约数 f(k)为 k的个数和 举例: k为2 n为8 那么f(k)=10 分别为 2-1 4-2 6-3 8-4 所以答案 ans=sigma k*f(k); 自己想想...
  • sxb_201
  • sxb_201
  • 2016年03月10日 19:01
  • 97

OpenGL学习三十九:飘动的旗帜

(此节内容对应NEHE教程第11课)   目前为止我们做的例子都是平面的,这个例子是带有波动效果的, 2维图形包括X,Y两个坐标系。因此看到的是平面的。 3维图形由X,Y,Z三个坐标系构成,当...
  • tiankefeng19850520
  • tiankefeng19850520
  • 2014年01月22日 14:27
  • 1365

java图形界面之文字飘动

简介:java图形话面板中让文字飘动package timepro;import java.awt.Font; import java.awt.event.ActionEvent; import ja...
  • qq_35550443
  • qq_35550443
  • 2016年11月27日 23:11
  • 263

利用顶点着色插件做地形及红旗飘动

这篇文章你一定要看要去实践,这是一个非常好的利用顶点着色来做贴图混合控制及顶点动画控制! 下载后导入unity,选中要设置顶点色的模型后开始着色:...
  • u013354943
  • u013354943
  • 2016年12月03日 10:21
  • 626
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:两朵飘动的小云
举报原因:
原因补充:

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