zoukankan      html  css  js  c++  java
  • POP-一个点击带有放大还原的动画效果

    原理

    监听屏幕的点击事件

    - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(nullable UIEvent *)event;

    - (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(nullable UIEvent *)event;

    - (void)touchesCancelled:(nullable NSSet<UITouch *> *)touches withEvent:(nullable UIEvent *)event;

    动画

    pop动画,需要pop框架

    两个动画一个放大,一个还原

    kPOPViewScaleXY:放大宽高

    代码

    - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
        POPSpringAnimation *scaleAnimation = [POPSpringAnimation animation];
        scaleAnimation.property = [POPAnimatableProperty propertyWithName:kPOPViewScaleXY];//宽高改变
        scaleAnimation.toValue = [NSValue valueWithCGSize:CGSizeMake(1.3, 1.3)];//1.3倍
        [self pop_addAnimation:scaleAnimation forKey:@"scaleAnimationKey"];//执行动画
        scaleAnimation.completionBlock = ^(POPAnimation *animation,BOOL finish) { //动画回调
            POPSpringAnimation *scaleAnimation = [POPSpringAnimation animation];
            scaleAnimation.springBounciness = 16;    // value between 0-20
            scaleAnimation.springSpeed = 14;     // value between 0-20
            scaleAnimation.property = [POPAnimatableProperty propertyWithName:kPOPViewScaleXY];
            scaleAnimation.toValue = [NSValue valueWithCGSize:CGSizeMake(1.0, 1.0)];
            [self pop_addAnimation:scaleAnimation forKey:@"scaleAnimationKey"];
        };
    }

    效果图

  • 相关阅读:
    Docker(五)-Dcoker容器
    Docker(二)-Docker安装
    Docker(四)-Dcoker镜像
    Docker(三)-Docker中Image、Container与Volume的迁移
    Docker(一)-Docker介绍
    coredump分析
    linux下生成core dump文件方法
    软件测试流程清单
    软件测试风险清单
    [测试管理]测试周报该如何写
  • 原文地址:https://www.cnblogs.com/hxwj/p/5033600.html
Copyright © 2011-2022 走看看