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"];
        };
    }

    效果图

  • 相关阅读:
    hdu 4258 Covered Walkway
    hdu 2337 Escape from Enemy Territory
    二分查找
    hdu 2335 Containers
    最大流 Dinic
    进程和并发编程
    黏包
    socket
    网络编程
    异常处理
  • 原文地址:https://www.cnblogs.com/hxwj/p/5033600.html
Copyright © 2011-2022 走看看