详解IPhone动画效果类型及实现方法是本文要介绍的内容,主要介绍了iphone动画的实现方法,不多说,我们一起来看内容。

实现iphone漂亮的动画效果主要有两种方法,一种是UIView层面的,一种是使用CATransition进行更低层次的控制.

1、UIView

  1. CGContextRef context = UIGraphicsGetCurrentContext();
  2. [UIView beginAnimations:nil context:context];
  3. [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
  4. [UIView setAnimationDelegate:self];
  5. [UIView setAnimationDuration:1.0];          //动画持续的时间
  6. //这里添加你对UIView所做改变的代码
  7. //[UIView setAnimationDidStopSelector:@selector(animationFinished:)];   //动画停止后,执行某个方法
  8. [UIView commitAnimations];

2、UIView(使用Cocoa Touch)

  1. CGContextRef context = UIGraphicsGetCurrentContext();
  2. [UIView beginAnimations:nil context:context];
  3. [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
  4. [UIView setAnimationDuration:1.0];
  5. // Cocoa Touch
  6. [UIView setAnimationTransition: UIViewAnimationTransitionCurlUp forView:myView cache:YES];
  7. [UIView setAnimationDelegate:self];
  8. //[UIView setAnimationDidStopSelector:@selector(animationFinished:)]; //动画停止后,执行某个方法
  9. [UIView commitAnimations];
  10. 动画方式(UIViewAnimationTransition):
  11. UIViewAnimationTransitionFlipFromLeft              //从左向右翻转
  12. UIViewAnimationTransitionFlipFromRight             //从右向左翻转
  13. UIViewAnimationTransitionCurlUp                    //从下向上翻页
  14. UIViewAnimationTransitionCurlDown                  //从上向下翻页

3、CATransition

  1. CATransition *animation = [CATransition animation];
  2. animation.delegate = self;
  3. animation.duration = 1.0f;       //动画执行时间
  4. animation.timingFunction = UIViewAnimationCurveEaseInOut;
  5. animation.type = kCATransitionFade;
  6. animation.subtype = kCATransitionFromRight;
  7. // 这里添加你对UIView所做改变的代码
  8. [[myView layer] addAnimation:animation forKey:@"animation"];

setType:有四种类型:

  1. kCATransitionFade                   //交叉淡化过渡
  2. kCATransitionMoveIn               //移动覆盖原图
  3. kCATransitionPush                    //新视图将旧视图推出去
  4. kCATransitionReveal                //底部显出来

setSubtype:有四种类型:

  1. kCATransitionFromRight;
  2. kCATransitionFromLeft(默认值)
  3. kCATransitionFromTop;
  4. kCATransitionFromBottom
  5. 注:kCATransitionFade 不支持Subtype

4、CATransition(只使用setType,参数是NSString)

  1. CATransition *animation = [CATransition animation];
  2. animation.delegate = self;
  3. animation.duration = 1.0f;   //动画执行时间
  4. animation.timingFunction = UIViewAnimationCurveEaseInOut;
  5. animation.type = @"suckEffect";// 这里添加你对UIView所做改变的代码
  6. [[myView layer] addAnimation:animation forKey:@"animation"];

可以用的效果主要有:

  1. pageCurl     //向上翻一页
  2. pageUnCurl   //向下翻一页
  3. rippleEffect   //滴水效果
  4. suckEffect     //收缩效果,如一块布被抽走
  5. cube       //立方体效果
  6. oglFlip      //上下翻转效果

小结:详解IPhone动画效果类型及实现方法的内容介绍完了,希望本文对你有所帮助

ios学习--详解IPhone动画效果类型及实现方法的更多相关文章

  1. iPhone跳转的动画效果类型及实现方法 CATransition

    实现iphone漂亮的动画效果主要有两种方法,一种是UIView层面的,一种是使用CATransition进行更低层次的控制, 第一种是UIView,UIView方式可能在低层也是使用CATransi ...

  2. iOS的动画效果类型及实现方法

    实现iOS漂亮的动画效果主要有两种方法, 一种是UIView层面的, 一种是使用CATransition进行更低层次的控制, 第一种是UIView,UIView方式可能在低层也是使用CATransit ...

  3. iOS学习--详解UIView的 contentStretch属性

    通过实例和图片理解UIView的contentStretch属性 方法 通过一个图片建立一个简单的UIImageView 设置它的contentStretch属性 修改它的frame属性 观察 测试用 ...

  4. CATransition的动画效果类型及实现方法--老代码备用参考

    实现iphone漂亮的动画效果主要有两种方法,一种是UIView层面的,一种是使用CATransition进行更低层次的控制, 第一种是UIView,UIView方式可能在低层也是使用CATransi ...

  5. [转]ANDROID L——Material Design详解(动画篇)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 转自:http://blog.csdn.net/a396901990/article/de ...

  6. 【转】IOS AutoLayout详解(三)用代码实现(附Demo下载)

    转载自:blog.csdn.net/hello_hwc IOS SDK详解 前言: 在开发的过程中,有时候创建View没办法通过Storyboard来进行,又需要AutoLayout,这时候用代码创建 ...

  7. iOS学习笔记-自定义过渡动画

    代码地址如下:http://www.demodashi.com/demo/11678.html 这篇笔记翻译自raywenderlick网站的过渡动画的一篇文章,原文用的swift,由于考虑到swif ...

  8. iOS CAEmitterLayer 实现粒子发射动画效果

    iOS CAEmitterLayer 实现粒子发射动画效果 效果图 代码已上传 GitHub:https://github.com/Silence-GitHub/CoreAnimationDemo 动 ...

  9. css 12-CSS3属性详解:动画详解

    12-CSS3属性详解:动画详解 #前言 本文主要内容: 过渡:transition 2D 转换 transform 3D 转换 transform 动画:animation #过渡:transiti ...

随机推荐

  1. hadoop常见错误汇总及解决办法一

    我们经常会遇到一些问题,而且可能会重复性遇到,这些方案可以收藏为以后备用.我们经常遇到如下问题:1.两次以上格式化造成NameNode 和 DataNode namespaceID 不一致,有几种解决 ...

  2. Linux安装vsftpd总结

    我使用的是CentOS6安装的vsftpd,转载请注明出处,以下是我的记录: #查看是否已经安装了vsfptd vsftpd -v #安装 yum -y install vsftpd #创建:chro ...

  3. python当前路径

    os.getcwd()获取系统路径 sys.path [0]获取当前路径

  4. 基于openresty 的几个开发框架

    1. kong    api  gateway     Github:   https://github.com/Mashape/kong 2.  Lapis   web 开发框架   Github: ...

  5. Virsh中创建虚拟机两种方式define和create的区别

    本质上两者一样的,都是从xml配置文件创建虚拟机 define  丛xml配置文件创建主机但是不启动 create  同样是丛xml配置文件创建主机,但是可以指定很多选项,比如是否启动,是否连接控制台 ...

  6. 安装Zookeeper(集群版)

    一.环境介绍(3台虚拟机) IP Hostname 192.168.2.14 javaweb04 192.168.2.15 javaweb05 192.168.2.16 javaweb06 二.配置文 ...

  7. 自定义元素(custom elements)

    记录下自定义html自定义元素的相关心得: 浏览器将自定义元素保留在 DOM 之中,但不会任何语义.除此之外,自定义元素与标准元素都一致 事实上,浏览器提供了一个HTMLUnknownElement, ...

  8. 函数参数个数不确定时使用va_start

    今天在网上看程序时忽然发现别人的函数参数中有省略号,甚是吃惊,发现其函数中使用了va_start,经过查资料大概明白其用法,个人觉得很好用! #include <stdio.h> #inc ...

  9. 你一定想知道的关于FPGA的那些事

    首先,如果您从未接触过FPGA(现场可编程门阵列),或者有过一点基础想要继续深入了解这个行业,在这里,会向您介绍FPGA,并且向您解释FPGA都能解决什么问题,如何解决这些问题,并讨论如何将设计进行优 ...

  10. Python中断多重循环的几种思路exit_flag

    常见方法 II. 跳出多重循环 事实上,Python的标准语法是不支持跳出多重循环的,所以只能利用一些技巧,大概的思路有:写成函数.利用笛卡尔积.利用调试. 写成函数 在Python中,函数运行到re ...