iOS开发日记55-隐式与显式动画
2015-12-25 14:22
435 查看
今天博主有一个隐式与显式动画的需求,遇到了一些困难点,在此和大家分享,希望能够共同进步.
iOS开发中的动画分为两种:一种为UIView动画,又称隐式动画,动画后frame的数值发生了变化.另一种是CALayer动画,又称显示动画,动画后模型层的数据不会发生变化,图形回到原来的位置.但是在实际开发中,因为UIView可以相应用户交互,所以UIView动画用的多.
一.UIview的动画
1.实现方式:动画块,block
begin
//设置动画效果 修改属性值,动画时长等等
conmmit
2.属性动画,过渡动画
①属性动画支持6种:transform 结构体 6个
②过渡动画:容器视图,两个子视图
二.CALayer动画 == 核心动画 == CAAnimation动画
CAAnimation 抽象类
animation
①.CAAnimationGroup 组合动画
②.CATransition 过渡动画
③.CAPropertyAnimation 属性动画(layer的属性)
animationWithKeyPath
CABasicAnimation 基本动画
fromValue toValue
CAKeyFrameAnimation 关键帧动画
values
下面贴出UIView动画的代码,与大家分享,CALayer动画,也就是Core Animation各位看官可以自行百度.
1.
//使用动画块设置动画
//开始设置动画 第一个参数:动画的名字 第二个参数:可以用来传值
[UIView beginAnimations:@"哈哈" context:nil];
//设置动画的时长
[UIView setAnimationDuration:1.5];
[UIView setAnimationRepeatAutoreverses:YES];
//根据需求设置视图的属性变化
_showView.backgroundColor=[UIColor grayColor];
_showView.center=CGPointMake(200, 200);
//提交动画设置,开始执行动画
[UIView commitAnimations];
2.
//使用Block设置动画
[UIView animateWithDuration:1.5 animations:^{
//动画效果设置
_showView.backgroundColor=[UIColor yellowColor];
//延时
[UIView setAnimationDelay:1.0];
//可以通过设置transform实现视图移动
} completion:^(BOOL finished) {
//动画完成后的设置
NSLog(@"动画完成");
}];
http://www.cocoachina.com/cms/wap.php?plg_nld=1&action=article&id=7597&plg_auth=1&plg_uin=1&plg_dev=1&plg_nld=1&plg_usr=1&plg_vkey=1
iOS开发中的动画分为两种:一种为UIView动画,又称隐式动画,动画后frame的数值发生了变化.另一种是CALayer动画,又称显示动画,动画后模型层的数据不会发生变化,图形回到原来的位置.但是在实际开发中,因为UIView可以相应用户交互,所以UIView动画用的多.
一.UIview的动画
1.实现方式:动画块,block
begin
//设置动画效果 修改属性值,动画时长等等
conmmit
2.属性动画,过渡动画
①属性动画支持6种:transform 结构体 6个
②过渡动画:容器视图,两个子视图
二.CALayer动画 == 核心动画 == CAAnimation动画
CAAnimation 抽象类
animation
①.CAAnimationGroup 组合动画
②.CATransition 过渡动画
③.CAPropertyAnimation 属性动画(layer的属性)
animationWithKeyPath
CABasicAnimation 基本动画
fromValue toValue
CAKeyFrameAnimation 关键帧动画
values
下面贴出UIView动画的代码,与大家分享,CALayer动画,也就是Core Animation各位看官可以自行百度.
1.
//使用动画块设置动画
//开始设置动画 第一个参数:动画的名字 第二个参数:可以用来传值
[UIView beginAnimations:@"哈哈" context:nil];
//设置动画的时长
[UIView setAnimationDuration:1.5];
[UIView setAnimationRepeatAutoreverses:YES];
//根据需求设置视图的属性变化
_showView.backgroundColor=[UIColor grayColor];
_showView.center=CGPointMake(200, 200);
//提交动画设置,开始执行动画
[UIView commitAnimations];
2.
//使用Block设置动画
[UIView animateWithDuration:1.5 animations:^{
//动画效果设置
_showView.backgroundColor=[UIColor yellowColor];
//延时
[UIView setAnimationDelay:1.0];
//可以通过设置transform实现视图移动
} completion:^(BOOL finished) {
//动画完成后的设置
NSLog(@"动画完成");
}];
http://www.cocoachina.com/cms/wap.php?plg_nld=1&action=article&id=7597&plg_auth=1&plg_uin=1&plg_dev=1&plg_nld=1&plg_usr=1&plg_vkey=1
相关文章推荐
- ios7中将状态栏变白的几种方式
- iOS数据存储的常用方式
- iOS---如何把导航默认的返回按钮设置成“返回”
- iOS_字符串显示不同颜色
- ios触摸事件四:触摸
- 很不错的GCD线程 使用和介绍
- iOS Animation开发简单动画
- [IOS 开发] GCD学习 dispatch_barrier_async
- IOS版添加phonegap--支付宝2.0快捷支付插件教程
- IOS中用正则表达式判断输入的内容为8-16位且同时包含数字和字母
- iOS 的VFL知识详解
- iOS设置view的边框、圆角、颜色
- iOS autoLayout总结
- CocoaPods的安装配置 10.11
- iOS 获得指定范围内的屏幕图像(截屏)
- IOS各种调试
- ios tableview刷新
- [MBR GPT] [BIOS EFI] LVM [fdisk parted]
- iOS等比例缩放图片
- 那些年遇到过的坑之 iOS