动画 Core Animation 直接修改视图属性
来源:互联网 发布:线切割锥度编程实例 编辑:程序博客网 时间:2024/06/06 06:57
UIView视图的动画功能,可以使在更新或切换视图时有放缓节奏、产生流畅的动画效果,进而改善用户体验。UIView可以产生动画效果的变化包括:
位置变化:在屏幕上移动视图。
大小变化:改变视图框架(frame)和边界。
拉伸变化:改变视图内容的延展区域。
改变透明度:改变视图的alpha值。
改变状态:隐藏或显示状态。
改变视图层次顺序:视图哪个前哪个后。
旋转:即任何应用到视图上的仿射变换(transform)
改变
+ (void)animateWithDuration:(NSTimeInterval)duration // 需要多少时间执行完动画 delay:(NSTimeInterval)delay // 等待多长时间开始执行动画 options:(UIViewAnimationOptions)options // 执行选项 animations:(void (^)(void))animations // 执行动画的block completion:(void (^)(BOOL finished))completion // 动画执行完毕后的block
示例:
[UIView animateWithDuration:3.0 delay:0.0 options:UIViewAnimationOptionBeginFromCurrentState animations:^{myView.alpha = 0.0;} completion:^(BOOL finished){if(finished) [myView removeFromSuperview];}];
上面的动画表示,立即将视图透明度设为0,动画执行3秒,立即执行动画,执行完毕后删除此视图
通过动画修改整个视图状态,使用此方法
+ (void) transitionWithView:(UIView *)view // 目标视图 duration:(NSTimeInterval)duration // 需要多少时间执行完动画 options:(UIViewAnimationOptions)options // 执行选项 animations:(void (^)(void))animations // 执行动画的block completion:(void (^)(BOOL finished))completion // 动画执行完毕后的block
改变视图层级,用另一个视图代替原始图,使用此方法
+ (void) transitionFromView:(UIView *)fromView // 原视图 toView:(UIView *)toView // 目标视图 duration:(NSTimeInterval)duration // 需要多少时间执行完动画 options:(UIViewAnimationOptions)options // 执行选项 completion:(void (^)(BOOL))completion // 动画执行完毕后的block
options选项:
常规动画属性设置(可以同时选择多个进行设置)
UIViewAnimationOptionLayoutSubviews:动画过程中保证子视图跟随运动。UIViewAnimationOptionAllowUserInteraction:动画过程中允许用户交互。UIViewAnimationOptionBeginFromCurrentState:所有视图从当前状态开始运行。UIViewAnimationOptionRepeat:重复运行动画。UIViewAnimationOptionAutoreverse :动画运行到结束点后仍然以动画方式回到初始点。UIViewAnimationOptionOverrideInheritedDuration:忽略嵌套动画时间设置。UIViewAnimationOptionOverrideInheritedCurve:忽略嵌套动画速度设置。UIViewAnimationOptionAllowAnimatedContent:动画过程中重绘视图(注意仅仅适用于转场动画)。 UIViewAnimationOptionShowHideTransitionViews:视图切换时直接隐藏旧视图、显示新视图,而不是将旧视图从父视图移除(仅仅适用于转场动画)UIViewAnimationOptionOverrideInheritedOptions :不继承父动画设置或动画类型。
动画速度控制(可从其中选择一个设置)
UIViewAnimationOptionCurveEaseInOut:动画先缓慢,然后逐渐加速。UIViewAnimationOptionCurveEaseIn :动画逐渐变慢。UIViewAnimationOptionCurveEaseOut:动画逐渐加速。UIViewAnimationOptionCurveLinear :动画匀速执行,默认值。
转场类型(仅适用于转场动画设置,可以从中选择一个进行设置,基本动画、关键帧动画不需要设置)
UIViewAnimationOptionTransitionNone:没有转场动画效果。UIViewAnimationOptionTransitionFlipFromLeft :从左侧翻转效果。UIViewAnimationOptionTransitionFlipFromRight:从右侧翻转效果。UIViewAnimationOptionTransitionCurlUp:向后翻页的动画过渡效果。 UIViewAnimationOptionTransitionCurlDown :向前翻页的动画过渡效果。 UIViewAnimationOptionTransitionCrossDissolve:旧视图溶解消失显示下一个新视图的效果。 UIViewAnimationOptionTransitionFlipFromTop :从上方翻转效果。 UIViewAnimationOptionTransitionFlipFromBottom:从底部翻转效果。
0 0
- 动画 Core Animation 直接修改视图属性
- Core Animation - 属性动画CAPropertyAnimation
- core animation初识之属性动画
- Core Animation 一 (视图动画和用户交互)
- Core Animation 动画
- Core Animation CALayer动画
- ios Core Animation 动画
- 核心动画Core Animation
- Core Animation动画技术
- Core Animation 核心动画
- 核心动画(Core Animation)
- 核心动画 Core Animation
- 核心动画(Core Animation)
- Core Animation 动画
- Core Animation核心动画
- Core Animation动画概述
- Core Animation - 核心动画
- 核心动画Core Animation
- Android学习笔记——声明
- java-web.xml启动顺序
- 安装配置Varnish3.0手记
- Android Activity启动模式
- maven 学习
- 动画 Core Animation 直接修改视图属性
- 南邮 OJ 1325 子集树问题
- 小米未到“存亡”关头,但潜在危机不容忽视
- Wapper类的拆包与自动装配与一个类的占用空间
- I帧转图片(BMP、PPM、JPG)
- android 3G移植
- 华为软件编程规范和范例 3 —— 变量、结构
- HSSFWorkBooK用法
- 南邮 OJ 1340 逆矩阵问题