zoukankan      html  css  js  c++  java
  • ios 学习总结之动画(转)

    转自:http://blog.sina.com.cn/s/blog_a85effc301012wu4.html
    UIView的,翻转、旋转,偏移,翻页,缩放,取反的动画效果
     
    翻转的动画
    //开始动画

        [UIView beginAnimations:@"doflip" context:nil];

    //设置时常

        [UIView setAnimationDuration:1];

    //设置动画淡入淡出

        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];

    //设置代理

        [UIView setAnimationDelegate:self];

    //设置翻转方向

        [UIView setAnimationTransition:

       UIViewAnimationTransitionFlipFromLeft  forView:manImageView cache:YES];

    //动画结束

        [UIView commitAnimations];

    旋转动画
     
    创建一个CGAffineTransform  transform对象

        CGAffineTransform  transform; 

    //设置旋转度数

        transform = CGAffineTransformRotate(manImageView.transform,M_PI/6.0);

    //动画开始

        [UIView beginAnimations:@"rotate" context:nil ];

    //动画时常

        [UIView setAnimationDuration:2];

    //添加代理

        [UIView setAnimationDelegate:self];

    //获取transform的值

        [manImageView setTransform:transform];

    //关闭动画

        [UIView commitAnimations]; 

    偏移动画

    [UIView beginAnimations:@"move" context:nil];

        [UIView setAnimationDuration:2];

        [UIView setAnimationDelegate:self];

    //改变它的frame的x,y的值

        manImageView.frame=CGRectMake(100,100, 120,100);

        [UIView commitAnimations];

    翻页动画

     [UIView beginAnimations:@"curlUp" context:nil];

        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];//指定动画曲线类型,该枚举是默认的,线性的是匀速的

        //设置动画时常

        [UIView setAnimationDuration:1];

         [UIView setAnimationDelegate:self];

        //设置翻页的方向

        [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:manImageView cache:YES];

        //关闭动画

        [UIView commitAnimations];

    缩放动画

    CGAffineTransform  transform;

        transform = CGAffineTransformScale(manImageView.transform,1.2,1.2);

        [UIView beginAnimations:@"scale" context:nil];

        [UIView setAnimationDuration:2];

        [UIView setAnimationDelegate:self];

        [manImageView setTransform:transform];

        [UIView commitAnimations];

    取反的动画效果是根据当前的动画取他的相反的动画
     

    CGAffineTransform transform;

        transform=CGAffineTransformInvert(manImageView.transform);

        

        [UIView beginAnimations:@"Invert" context:nil];

        [UIView setAnimationDuration:2];//动画时常

        [UIView setAnimationDelegate:self];

        [manImageView setTransform:transform];//获取改变后的viewtransform

        [UIView commitAnimations];//关闭动画

  • 相关阅读:
    Code Forces 650 C Table Compression(并查集)
    Code Forces 645B Mischievous Mess Makers
    POJ 3735 Training little cats(矩阵快速幂)
    POJ 3233 Matrix Power Series(矩阵快速幂)
    PAT 1026 Table Tennis (30)
    ZOJ 3609 Modular Inverse
    Java实现 LeetCode 746 使用最小花费爬楼梯(递推)
    Java实现 LeetCode 745 前缀和后缀搜索(使用Hash代替字典树)
    Java实现 LeetCode 745 前缀和后缀搜索(使用Hash代替字典树)
    Java实现 LeetCode 745 前缀和后缀搜索(使用Hash代替字典树)
  • 原文地址:https://www.cnblogs.com/huanglong/p/3217095.html
Copyright © 2011-2022 走看看