iOS 动画总结—UIView动画

(void)buttonPressed
exchangeSubviewAtIndex:0 withSubviewAtIndex:1];
beginAnimations:@"View Flip" context:nil];
setAnimationDuration:1.25];
setAnimationDelegate:self];
UIViewAnimationCurveEaseInOut];
setAnimationTransition:UIViewAnimationTransitionCurlUp
forView:self.view cache:YES];
commitAnimations];
(void)viewDidLoad
viewDidLoad];
= [[BlueViewController alloc] initWithNibName:nil
bundle:nil];
setFrame:CGRectMake(0, 0, self.view.frame.size.width ,
self.view.frame.size.height)];
= [[YellowController alloc]initWithNibName:nil bundle:nil
];
setFrame:CGRectMake(0, 0, self.view.frame.size.width ,
self.view.frame.size.height)];
insertSubview:self.blueController.view
atIndex:0];
insertSubview:self.yellowController.view
atIndex:1];
事件
= [[UIBarButtonItem alloc] initWithTitle:@"next"
style:UIBarButtonItemStylePlain target:self
action:@selector(buttonPressed)];
= self.rightBarItem;
(BOOL)areAnimationsEnabled
*)animationID context:(void *)context
方法来设置。
和setAnimationDidStopSelector: 方法。
beginAnimations:context:来开始一个动画块并用commitAnimations类方法来结束一个动画块。
(void)commitAnimations
(Class)layerClass
(void)setAnimationBeginsFromCurrentState:(BOOL)fromCurrentState
为开始状态。这个方法将不会做任何事情如果动画没有运行或者没有在动画块外调用。使用beginAnimations:context:类方法来开始并用
commitAnimations类方法来结束动画块。默认值是NO。
(void)setAnimationCurve:(UIViewAnimationCurve)curve
beginAnimations:context:类方法来开始动画块并用commitAnimations来结束动画块。默认动画曲线的值是UIViewAnimationCurveEaseInOut。
(void)setAnimationDelay:(NSTimeInterval)delay
类方法开始一个动画块并用commitAnimations类方法结束动画块。默认的动画延迟是0.0秒。
(void)setAnimationDelegate:(id)delegate
方法来设置接收代理消息的对象。
(void)setAnimationDidStopSelector:(SEL)selector
*)animationID finished:(BOOL)finished context:(void
*)context。
相同的参数。这个参数可以为空。
方法相同的参数。可以为空。
类方法来开始一个动画块并用commitAnimations类方法结束。默认值是NULL。
(void)setAnimationDuration:(NSTimeInterval)duration
类方法来开始一个动画块并用commitAnimations类方法来结束一个动画块。默认值是0.2。
(void)setAnimationRepeatAutoreverses:(BOOL)repeatAutoreverses
类方法来指定动画自动重播的时间。如果重复数为0或者在动画块外那将没有任何效果。使用beginAnimations:context:类方法来开始一个动画块并用commitAnimations方法来结束一个动画块。默认值是NO。
(void)setAnimationRepeatCount:(float)repeatCount
(void)setAnimationsEnabled:(BOOL)enabled
(void)setAnimationStartDate:(NSDate *)startTime
(void)setAnimationTransition:(UIViewAnimationTransition)transition
forView:(UIView *)view cache:(BOOL)cache
block.
container view.
container view.
container view.
block.
3.在容器视图中移除子视图。 4.在容器视图中添加子视图。 5.结束动画块。
(void)setAnimationWillStartSelector:(SEL)selector
方法相同的参数,一个任选的程序标识和内容。这些参数都可以是nil。
这个方法在动画块外没有任何作用。使用beginAnimations:context:类方法来开始一个动画块并用commitAnimations类方法来结束。
欢迎学习本文,未经许可,禁止转载!
iOS 动画总结—UIView动画的更多相关文章
- iOS动画1 — UIView动画
iOS动画基础是Core Animation核心动画.Core Animation是iOS平台上负责图形渲染与动画的基础设施.由于核心动画的实现比较复杂,苹果提供了实现简单动画的接口—UIView动画 ...
- 核心动画和UIView动画的区别
核心动画和UIView动画的区别 1.核心动画制作用在Layer 2.核心动画的修改的属性都是假象,他的真实位置没有发生变化()
- iOS核心动画以及UIView动画的介绍
我们看到很多App带有绚丽狂拽的特效,别出心裁的控件设计,很大程度上提高了用户体验,在增加了实用性的同时,也赋予了app无限的生命力.这些华丽的效果很多都是基于iOS的核心动画原理实现的,本文介绍一些 ...
- ios中layer动画和UIView动画代码总结
kCATransitionFade淡出 kCATransitionMoveIn覆盖原图 kCATransitionPush推出 kCATransitionReveal底部显出来 pageC ...
- 转-iOS 动画总结----UIView动画
来自:http://blog.csdn.net/huifeidexin_1/article/details/7597868/ 1.概述 UIKit直接将动画集成到UIView类中,实现简单动画的创建过 ...
- ios开发核心动画七:核心动画与UIView动画的区别
/** UIView与核心动画区别?(掌握) 1.核心动画只作用在layer. 2.核心动画看到的都是假像,它并没有去修改UIView的真实位置. 什么时候使用核心动画? 1.当不需要与用户进行交互, ...
- iOS开发UI篇—核心动画(UIView封装动画)
iOS开发UI篇—核心动画(UIView封装动画) 一.UIView动画(首尾) 1.简单说明 UIKit直接将动画集成到UIView类中,当内部的一些属性发生改变时,UIView将为这些改变提供动画 ...
- iOS动画篇:UIView动画
iOS的动画效果一直都很棒很,给人的感觉就是很炫酷很流畅,起到增强用户体验的作用.在APP开发中实现动画效果有很多种方式,对于简单的应用场景,我们可以使用UIKit提供的动画来实现. UIView动画 ...
- iOS - UIView 动画
1.UIView 动画 核心动画 和 UIView 动画 的区别: 核心动画一切都是假象,并不会真实的改变图层的属性值,如果以后做动画的时候,不需要与用户交互,通常用核心动画(转场). UIView ...
随机推荐
- 将Python当作计算器
在交互模式中,最近一个表达式的值赋给变量 _.这样我们就可以把它当作一个桌面计算器,很方便的用于连续计算.例如: >>> price = 1.25 #声明变量price >&g ...
- 当我们在谈论JMM(Java memory model)的时候,我们在谈论些什么
前面几篇中,我们谈论了synchronized.final以及voilate的用法和底层实现,都绕不开一个话题-Java内存模型(java memory model,简称JMM).Java内存模型是保 ...
- Docker 删除容器
可以使用 docker rm 来删除一个处于终止状态的容器. 例如 $sudo docker rm trusting_newton trusting_newton 如果要删除一个运行中的容器,可以添加 ...
- C/C++静态数组与动态数组的区别
简介 以下三行代码有什么区别? int a[10]; int *a = (int*)malloc(sizeof(int)*10); int *a = new int[10]; 第一行代码定义a为包含1 ...
- 两行代码搞定Android视图扩散切换效果
用最简单的方式来实现Android视图扩散切换效果. 一.概述 这两天时间动手撸了个视图扩散切换效果的控制器,API兼容至Android4.0,更方便我们在视图切换过程中有炫酷的过渡效果.本来是想实现 ...
- NLP系列(3)_用朴素贝叶斯进行文本分类(下)
作者: 龙心尘 && 寒小阳 时间:2016年2月. 出处: http://blog.csdn.net/longxinchen_ml/article/details/50629110 ...
- windows上安装nodejs,升级npm,安装webpack指南
安装nodejs https://nodejs.org/en/ 安装webpack和其他一些常用的 npm install -g node-gyp webpack coffee-script 监控 w ...
- 微信自定义菜单url默认80端口问题解决
微信自定义菜单url默认80端口的,但是有些服务器上可能配置了多个tomcat.或者是刚好你服务器上80端口被占用了.在这样的情况下,我们可以通过如下方式解决: 首先安装apache,关于apache ...
- JDK 源码学习——ByteBuffer
ByteBuffer 在NIO的作用 Java SE4 开始引入Java NIO,相比较于老的IO,更加依赖底层实现.引入通道(Channels),选择器(selector),缓冲(Buffers). ...
- springMVC源码分析--访问请求执行ServletInvocableHandlerMethod和InvocableHandlerMethod
在之前一篇博客中springMVC源码分析--RequestMappingHandlerAdapter(五)我们已经简单的介绍到具体请求访问的执行某个Controller中的方法是在RequestMa ...