1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
      <output id="hzk7v"></output>
    2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
    3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

      iOS实现数字倍数动画效果

       更新时间2019年02月28日 14:28:44   作者G_猿   我要评论

      在iOS开发中,制作动画效果是最让开发者享受的环节之一下面这篇文章主要给大家介绍了关于iOS实现数字倍数动画效果的相关资料文中通过示例代码介绍的非常详细对大家的学习或者工作具有一定的参考学习价值需要的朋友们下面来一起学习学习吧

      前言

      一个简单的利用 透明度和 缩放 实现的 数字倍数动画

      效果图

      实现思路

      上代码 看比较清晰

      // 数字跳动动画
      - (void)labelDanceAnimation:(NSTimeInterval)duration {
       //透明度
       CABasicAnimation *opacityAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"];
       opacityAnimation.duration = 0.4 * duration;
       opacityAnimation.fromValue = @0.f;
       opacityAnimation.toValue = @1.f;
      
       //缩放
       CAKeyframeAnimation *scaleAnimation = [CAKeyframeAnimation animationWithKeyPath:@"transform.scale"];
       scaleAnimation.duration = duration;
       scaleAnimation.values = @[@3.f, @1.f, @1.2f, @1.f];
       scaleAnimation.keyTimes = @[@0.f, @0.16f, @0.28f, @0.4f];
       scaleAnimation.removedOnCompletion = YES;
       scaleAnimation.fillMode = kCAFillModeForwards;
      
       CAAnimationGroup *animationGroup = [CAAnimationGroup animation];
       animationGroup.animations = @[opacityAnimation, scaleAnimation];
       animationGroup.duration = duration;
       animationGroup.removedOnCompletion = YES;
       animationGroup.fillMode = kCAFillModeForwards;
      
       [self.comboLabel.layer addAnimation:animationGroup forKey:@"kComboAnimationKey"];
      }

      利用一个透明度从 0 ~ 1之间的alpha,然后缩放 之后加到动画组实现一下就好了

      切记动画完成最好移除 否则可能引起动画内存问题

      这里设置斜体字体

      self.comboLabel.font = [UIFont fontWithName:@"AvenirNext-BoldItalic" size:50];

      看着比较明显

      最后按钮点击的时候调用

      - (IBAction)clickAction:(UIButton *)sender {
       self.danceCount++;
       [self labelDanceAnimation:0.4];
       self.comboLabel.text = [NSString stringWithFormat:@"+ %tu",self.danceCount];
      }

      如果实现 dozen动画的话很简单, danceCount % 10 == 0 求模就行了.

      总结

      这个动画比较适合 有些直播场景的点击操作计数相关.

      好了以上就是这篇文章的全部内容了希望本文的内容对大家的学习或者工作具有一定的参考学习价值如果有疑问大家可以留言交流谢谢大家对脚本之家的支持

      相关文章

      最新评论

      3dԻв

        1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
          <output id="hzk7v"></output>
        2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
        3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

            1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
              <output id="hzk7v"></output>
            2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
            3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>