工程中需要的源码请从这里下载:
https://github.com/YouXianMing/EasingAnimation
源码:
// // ViewController.m // EasingView // // Created by YouXianMing on 15/1/17. // Copyright (c) 2015年 YouXianMing. All rights reserved. // #import "ViewController.h" #import "YXEasing.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // 显示的view UIView *showView = [[UIView alloc] initWithFrame:CGRectMake(100, -100, 100, 100)]; showView.backgroundColor = [UIColor clearColor]; showView.layer.borderColor = [UIColor redColor].CGColor; showView.layer.borderWidth = 4.f; showView.layer.cornerRadius = 50.f; [self.view addSubview:showView]; // 关键帧动画 CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:@"position"]; // 设置值 [animation setValues:[YXEasing calculateFrameFromPoint:showView.center toPoint:CGPointMake(showView.center.x, showView.center.y + 565) func:BounceEaseOut frameCount:100]]; // 设置持续时间 animation.duration = 1.f; // 执行动画效果 showView.center = CGPointMake(showView.center.x, showView.center.y + 565); [showView.layer addAnimation:animation forKey:nil]; } @end
时间: 2024-10-11 12:18:07