zoukankan      html  css  js  c++  java
  • 视图自己定义旋转动画 相似百度音乐

    @interface FirstViewController ()

    @property (nonatomic,assign)BOOL isplay;

    @end




    @implementation FirstViewController

    @synthesize isplay;


    - (void)viewDidLoad

    {

        [super viewDidLoad];

        isplay = NO;

        //圆角

        self.imgview.layer.cornerRadius = 150.0 / 2.0;

        self.imgview.layer.masksToBounds = YES;

        

        //加入动画

        CABasicAnimation *monkeyAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];

        monkeyAnimation.toValue = [NSNumber numberWithFloat:2.0 *M_PI];

    monkeyAnimation.duration = 1.5f;

    monkeyAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear];

        monkeyAnimation.cumulative = NO;

        monkeyAnimation.removedOnCompletion = NO; //No Remove

        monkeyAnimation.repeatCount = FLT_MAX;

    [self.imgview.layer addAnimation:monkeyAnimation forKey:@"AnimatedKey"];

        [self.imgview stopAnimating];

        

        // 载入动画 但不播放动画

        self.imgview.layer.speed = 0.2;

        

    }


    - (void)didReceiveMemoryWarning

    {

        [super didReceiveMemoryWarning];

        // Dispose of any resources that can be recreated.

    }


    //開始动画

    - (IBAction)startAnimate:(id)sender {

        if (!isplay) {

            isplay = YES;

            self.imgview.layer.speed = 1.0;

            self.imgview.layer.beginTime = 0.0;

            CFTimeInterval pausedTime = [self.imgview.layer timeOffset];

            CFTimeInterval timeSincePause = [self.imgview.layer convertTime:CACurrentMediaTime() fromLayer:nil] - pausedTime;

            self.imgview.layer.beginTime = timeSincePause;

        }

        

        

    }

    //停止动画并保存当前的角度

    - (IBAction)stioAnimate:(id)sender {

        if (isplay) {

            isplay = NO;

            CFTimeInterval pausedTime = [self.imgview.layer convertTime:CACurrentMediaTime() fromLayer:nil];

            self.imgview.layer.speed = 0.0;

            self.imgview.layer.timeOffset = pausedTime;

        }


    }

    @end

  • 相关阅读:
    NYOJ458
    NYOJ67
    NYOJ105
    NYOJ1071
    NYOJ463
    C语言练字用小软件 — Practise_Calligraphy_1.0(ANSI)
    NYOJ276
    NYOJ455
    NYOJ74
    Jzoj4458 密钥破解——Pollard-rho
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5317369.html
Copyright © 2011-2022 走看看