关键帧动画(2)心脏的跳动

//

//  ViewController.m

//  UI-NO-38-1基础动画实例1

//

//  Created by 容伟 on 15/9/17.

//  Copyright (c) 2015年 容伟. All rights reserved.

//

/*

 CAKeyframeAnimation 也属于 CAPropertyAnimation

 关键帧动画  可以让我们精准的控制动画效果  它的原理是 把动画序列里面比较关键的帧取出来  设置他的动画效果

 

 values属性 执行动画轨迹的路径

 path 属性  执行动画轨迹的数组

 

 

 */

#import "ViewController.h"

 

@interface ViewController ()

{

    CALayer *petalLayer;

}

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    self.view.backgroundColor = [UIColor whiteColor];

    UIImageView *imageView = [[UIImageView alloc] initWithFrame:[UIScreen mainScreen].bounds];

    NSString *path = [[NSBundle mainBundle] pathForResource:@"落叶" ofType:@"jpg"];

    imageView.image = [UIImage imageWithContentsOfFile:path];

    

    [self.view addSubview:imageView];

    

    [self addPetal];

 

 

}

 

- (void)addPetal {

    NSString *path = [[NSBundle mainBundle] pathForResource:@"petal" ofType:@"jpg"];

    UIImage *petal = [UIImage imageWithContentsOfFile:path];

    petalLayer = [[CALayer alloc] init];

    petalLayer.bounds = CGRectMake(0, 0, petal.size.width, petal.size.height);

    petalLayer.position = CGPointMake(150, 250);

    petalLayer.contents = (id)petal.CGImage;

    [self.view.layer addSublayer:petalLayer];

    

}

 

- (void)dropAnimation {

    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"position"];

    animation.fromValue = [NSValue valueWithCGPoint:petalLayer.position];

    animation.toValue = [NSValue valueWithCGPoint:CGPointMake(150, 600)];

    animation.duration = 5;

    animation.removedOnCompletion = NO;

    animation.fillMode = kCAFillModeBoth;

    [petalLayer addAnimation:animation forKey:@"show"];

    

    

}

 

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

    [self dropAnimation];

}

 

- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

 

@end


时间: 2024-12-22 19:15:25

关键帧动画(2)心脏的跳动的相关文章

《Programming WPF》翻译 第8章 4.关键帧动画

原文:<Programming WPF>翻译 第8章 4.关键帧动画 到目前为止,我们只看到简单的点到点的动画.我们使用了To和From属性或者By属性来设计动画--相对于当前的属性值.这很适合简单的动画,但是我们可以构造序列来创建更复杂的动画,这可能是非常麻烦的.幸运的是,这是没有必要的.WPF提供了动画对象,允许我们详细指出一系列时间和值. 在影视中传统的动画中,这是普通的开始--通过绘制最重要的动画步骤.这些关键帧定义了场景的基本流程,捕获了它的最重要的点.只要一旦这些关键帧是满意的,是

Silverlight动画的基本知识、关键帧动画

基础知识 (一)动画:是快速播放一系列图像(其中每个图像与下一个图像略微不同)给人造成的一种幻觉 (二)动画类型:两类    (1)From/To/By动画:在起始值和结束值之间进行动画处理.      (2)关键帧动画:在使用关键帧对象指定的一系列值之间播放动画 (三) 动画是时间线:所有动画均继承自 Timeline 对象,因此所有动画都是专用类型的时间线.有以下重要属性: (1)TargetName:指定要进行动画处理的对象        (2)TargetProperty:指定要进行动画

iOS:核心动画之关键帧动画CAKeyframeAnimation

CAKeyframeAnimation——关键帧动画 关键帧动画,也是CAPropertyAnimation的子类,与CABasicAnimation的区别是: –CABasicAnimation只能从一个数值(fromValue)变到另一个数值(toValue),而CAKeyframeAnimation会使用一个NSArray保存这些数值 – 属性说明: –values:上述的NSArray对象.里面的元素称为“关键帧”(keyframe).动画对象会在指定的时间(duration)内,依次显

iOS block-base 动画简单用法+关键帧动画设置线性变化速度的问题

本文转载至 http://www.tuicool.com/articles/aANBF3m 时间 2014-12-07 20:13:37  segmentfault-博客原文  http://segmentfault.com/blog/alan/1190000002411296 iOS的各种动画相漂亮,相信这是吸引很多人买iPhone的原因之一.不仅如此,这还是吸引我做iOS开发的一大原因,因为在iOS上给界面实现一些像样的动画实在是太轻松了! 这里就介绍一下iOS的block-based an

缓动函数与关键帧动画

缓动函数与关键帧动画 缓动函数指定动画效果在执行时的速度,使其看起来更加真实. 现实物体照着一定节奏移动,并不是一开始就移动很快的.当我们打开抽屉时,首先会让它加速,然后慢下来.当某个东西往下掉时,首先是越掉越快,撞到地上后回弹,最终才又碰触地板. http://easings.net/zh-cn 缓动函数能让动画效果看起来更加真实:). iOS开发中,能用到缓动函数的地方就属于关键帧动画了,以下是我用关键帧动画做出来的模拟真实时钟效果的动画,效果相当逼真哦,只是这个gif图片的效果不好而已.

关键帧动画:@keyframes

关键帧动画:@keyframes: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>关键帧动画</title> 6 <style type="text/css"> 7 .div1{ 8 width: 200px; 9 height: 200px; 10 background: yellow;

IOS动画(3)关键帧动画

关键帧动画中的时间系统,模型树和呈现树与基础动画一致,这里主要介绍关键帧动画的用法 CAKeyframeAnimation - (void)viewDidLoad { [super viewDidLoad]; CALayer *layer = [CALayer layer]; layer.bounds = CGRectMake(0, 0, 120, 120); layer.position = CGPointMake(100, 300); layer.cornerRadius = 60; lay

iOS基本动画/关键帧动画/利用缓动函数实现物理动画效果

先说下基本动画部分 基本动画部分比较简单, 但能实现的动画效果也很局限 使用方法大致为: #1. 创建原始UI或者画面 #2. 创建CABasicAnimation实例, 并设置keypart/duration/fromValue/toValue #3. 设置动画最终停留的位置 #4. 将配置好的动画添加到layer层中 举个例子, 比如实现一个圆形从上往下移动, 上代码: 1 //设置原始画面 2 UIView *showView = [[UIView alloc] initWithFrame

iOS开发——动画编程OC篇&amp;(三)关键帧动画

一.简单介绍 是CApropertyAnimation的子类,跟CABasicAnimation的 区别是:CABasicAnimation只能从一个数值(fromValue)变到另一个数值(toValue),而 CAKeyframeAnimation会使用一个NSArray保存这些数值 属性解析: values:就是上述的NSArray对象.里面的元素称为”关键帧”(keyframe).动画对象会在指定的时间(duration)内,依次显示values数组中的每一个关键帧 path:可以设置一