• iOS-类似微信摇一摇


    首先,一直以为摇一摇的功能实现好高大上,结果百度了。我自己也模仿写了一个demo。主要代码如下:

    新建一个项目,名字为AnimationShake。

    主要代码:

    - (void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event
    {
    }

    - (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event
    {
        if (motion == UIEventSubtypeMotionShake )
        {
            // User was shaking the device. Post a notification named "shake".
            [[NSNotificationCenter defaultCenter] postNotificationName:@"shake" object:self];
        }
    }

    - (void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event
    {    
    }

    -(void)addAnimations{

        AudioServicesPlaySystemSound(_soundID);
        
        //让imgup上下移动
        CABasicAnimation *translation2 = [CABasicAnimation animationWithKeyPath:@"position"];
        translation2.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        translation2.fromValue = [NSValue valueWithCGPoint:CGPointMake(160, 115)];
        translation2.toValue = [NSValue valueWithCGPoint:CGPointMake(160, 40)];
        translation2.duration = 0.4;
        translation2.repeatCount = 1;
        translation2.autoreverses = YES;
        
        //让imagdown上下移动
        CABasicAnimation *translation = [CABasicAnimation animationWithKeyPath:@"position"];
        translation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        translation.fromValue = [NSValue valueWithCGPoint:CGPointMake(160, 345+44+20)];
        translation.toValue = [NSValue valueWithCGPoint:CGPointMake(160, 420)];
        translation.duration = 0.4;
        translation.repeatCount = 1;
        translation.autoreverses = YES;
        
        [_imgDown.layer addAnimation:translation forKey:@"translation"];
        [_imgUp.layer addAnimation:translation2 forKey:@"translation2"];
    }

    源码可以去我的github网站:https://github.com/linxiu下载看看。谢谢,欢迎大家指正,我是新手。

  • 相关阅读:
    ACTIVE OBJECT 模式
    Node.js
    WordPress — 突破性能瓶颈,使用 WordPress 站群做 SEO 推广
    HttpRequest.Item 属性 和 HttpRequest.QueryString 属性的区别!
    Regex.Replace 方法的性能!(090625最新修改)
    FACTORY 模式
    Indexof String By Byte[]
    [11]DIP:依赖倒置原则
    C#.Net Winform skin 皮肤 大全(转)
    C# 情缘
  • 原文地址:https://www.cnblogs.com/linxiu-0925/p/5455558.html
Copyright © 2020-2023  润新知