详解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. (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序

    每次使用 Visual Studio 的模板创建一个 UWP 程序,我们会在项目中发现大量的项目文件.配置.应用启动流程代码和界面代码.然而这些文件在 UWP 程序中到底是如何工作起来的? 我从零开始 ...

  2. 解决 mklink 使用中的各种坑(硬链接,软链接/符号链接,目录链接)

    通过 mklink 命令可以创建文件或文件夹的链接,而这种链接跟快捷方式是不一样的.然而我们还可能会遇到其使用过程中的一些坑,本文将整理这些坑并提供解决方法.   0x00 背景介绍:mklink m ...

  3. jquery ajax 超时设置

    自:jquery ajax超时设置 var ajaxTimeoutTest = $.ajax({ url:'',  //请求的URL timeout : 1000, //超时时间设置,单位毫秒 typ ...

  4. 《DSP using MATLAB》示例Example 8.12

    %% ------------------------------------------------------------------------ %% Output Info about thi ...

  5. 《DSP using MATLAB》示例Example 7.13

    代码: M = 25; alpha = (M-1)/2; n = [0:1:M-1]; hd = (2/pi) * ( (sin( (pi/2)*(n-alpha) ).^2)./(n-alpha) ...

  6. pid参数调节的几句话

    如果参数上升太快,降低Kp值,如果震荡太剧烈(振荡幅度过大),降低Ki值,如果曲线震荡部分上升下降太快则尝试调整Kd值.

  7. goreman 多进程管理工具

    Linux下多进程管理工具对开发和运维都很有用,常见的功能全面的主流工具主要有monit.supervisor.不过开发中使用则推荐轻量级小工具goreman 举个例子:coreos的etcd就是使用 ...

  8. 国外牛人的五个Kubernetes学习建议

    现在云中存在的许多系统都是建立在基于虚拟机,虚拟磁盘等物理概念的抽象基础之上的,”Heptio的联合创始人兼首席技术官兼Kubernetes在Google的原始开发人员之一的Joe Beda说. “K ...

  9. centos6.6安装php5.3.3(2015/3/4)

    问题:centos6.6因要升级mysql5.5所以yum重新更新了源,导致按照原来lamp环境安装步骤,安装php时一直找webtitic源,php5.3.24 而且一直无法安装下去 利用yum r ...

  10. NGUI的UICamera

    参考 https://blog.csdn.net/kakashi8841/article/details/20548429   全文请查看:http://note.youdao.com/notesha ...