博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Core Animation简介
阅读量:6968 次
发布时间:2019-06-27

本文共 1531 字,大约阅读时间需要 5 分钟。

1、我们是使用Core Animatioin创建动画的时,实质上是更改CALayer的属性,然后让这些属性流畅的变化。可以使用Core Animation对象的位置、颜色、透明度以及CGAffine变换来制作动画。

2、一个简单的小动画

/隐式动画/

 

- (void)viewDidLoad {

    [super viewDidLoad];

    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];

    [UIView beginAnimations:nil context:NULL];

    [UIView setAnimationDuration:2.0];  //设置动画时长

    CGAffineTransform moveTransform = CGAffineTransformMakeTranslation(200, 300);  //移动到固定的位置

    [imageView.layer setAffineTransform:moveTransform];

    imageView.layer.opacity = 1;

    

    [UIView commitAnimations];

    imageView.backgroundColor = [UIColor redColor];

    

    [self.view addSubview:imageView];

 

}

/显示动画/

- (void)viewDidLoad {

    [super viewDidLoad];

    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];

    imageView.backgroundColor = [UIColor redColor];

 

    CABasicAnimation *opAnim = [CABasicAnimation animationWithKeyPath:@"opacity"];

    opAnim.duration = 3.0;

    //定义开始和结束的透明度

    opAnim.fromValue = [NSNumber numberWithFloat:1.0];

    opAnim.toValue = [NSNumber numberWithFloat:0];

    opAnim.cumulative = YES;

    opAnim.repeatCount = 6;    //重复次数

    [imageView.layer addAnimation:opAnim forKey:@"animateOpacity"];

    CGAffineTransform moveTransform = CGAffineTransformMakeTranslation(200, 300);

    CABasicAnimation *moveAnim = [CABasicAnimation animationWithKeyPath:@"transform"];

    moveAnim.duration = 6.0;

    moveAnim.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeAffineTransform(moveTransform)];

    [imageView.layer addAnimation:moveAnim forKey:@"animateTransform"];

    

    [self.view addSubview:imageView];

转载地址:http://ocisl.baihongyu.com/

你可能感兴趣的文章
Test2 unit6
查看>>
sql注入<二>
查看>>
26、OSPF配置实验之不规则区域虚链路
查看>>
[C++再学习系列] 引用和指针
查看>>
未能加载文件或程序集“********”或它的某一个依赖项。试图加载格式不正确的程序。...
查看>>
bootstrap4-图像
查看>>
Centos7 MariaDB10.1.22编译安装
查看>>
路由器配置基础(中)
查看>>
/etc/sudoers的配置
查看>>
菜鸟学Linux 第075篇笔记 mysql事务,视图
查看>>
Mysql + PHP
查看>>
jetty9请求form表单太小限制
查看>>
linux服务器优化1.0版
查看>>
从oracle到mysql,主从到分库,一个普通项目数据库架构的变迁
查看>>
ASP.NET 4.0请求验证报错 从客户端...中检测到有潜在危险的 Request.Form 值
查看>>
ASM
查看>>
mysql常用操作
查看>>
unit 9 文档练习
查看>>
PHP代码优化的40条建议
查看>>
Crontab的用法
查看>>