各种动画效果
最普通动画:
//开始动画
[UIView beginAnimations:nil context:nil];
//设定动画持续时间
[UIView setAnimationDuration:2];
//动画的内容
frame.origin.x += 150;
[img setFrame:frame];
//动画结束
[UIView commitAnimations];
连续动画:一个接一个地显示一系列的图像
NSArray *myImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"myImage1.png"],
[UIImage imageNamed:@"myImage2.png"],
[UIImage imageNamed:@"myImage3.png"],
[UIImage imageNamed:@"myImage4.gif"], nil];
UIImageView *myAnimatedView = [UIImageView alloc];
[myAnimatedView initWithFrame:[self bounds]];
myAnimatedView.animationImages = myImages; //animationImages属性返回一个存放动画图片的数组
myAnimatedView.animationDuration = 0.25; //浏览整个图片一次所用的时间
myAnimatedView.animationRepeatCount = 0; // 0 = loops forever 动画重复次数
[myAnimatedView startAnimating];
[self addSubview:myAnimatedView];
[myAnimatedView release];
CATransition Public API动画:
CATransition *animation = [CATransition animation];
//动画时间
animation.duration = 0.5f;
//先慢后快
animation.timingFunction = UIViewAnimationCurveEaseInOut;
animation.fillMode = kCAFillModeForwards;
//animation.removedOnCompletion = NO;
//各种动画效果
/*
kCATransitionFade;
kCATransitionMoveIn;
kCATransitionPush;z
kCATransitionReveal;
*/
/*
kCATransitionFromRight;
kCATransitionFromLeft;
kCATransitionFromTop;
kCATransitionFromBottom;
*/
//各种组合
animation.type = kCATransitionPush;
animation.subtype = kCATransitionFromRight;
[self.view.layer addAnimation:animation forKey:@"animation"];
CATransition Private API动画:
animation.type可以设定为以下效果
动画效果汇总:
/*
suckEffect(三角)
rippleEffect(水波抖动)
pageCurl(上翻页)
pageUnCurl(下翻页)
oglFlip(上下翻转)
cameraIris/cameraIrisHollowOpen/cameraIrisHollowClose (镜头快门,这一组动画是有效果,只是很难看,不建议使用
而以下为则黑名单:
spewEffect: 新版面在屏幕下方中间位置被释放出来覆盖旧版面.
- genieEffect: 旧版面在屏幕左下方或右下方被吸走, 显示出下面的新版面 (阿拉丁灯神?).
- unGenieEffect: 新版面在屏幕左下方或右下方被释放出来覆盖旧版面.
- twist: 版面以水平方向像龙卷风式转出来.
- tubey: 版面垂直附有弹性的转出来.
- swirl: 旧版面360度旋转并淡出, 显示出新版面.
- charminUltra: 旧版面淡出并显示新版面.
- zoomyIn: 新版面由小放大走到前面, 旧版面放大由前面消失.
- zoomyOut: 新版面屏幕外面缩放出现, 旧版面缩小消失.
- oglApplicationSuspend: 像按"home" 按钮的效果.
*/
UIView Animations 动画:
[UIView beginAnimations:@"animationID" context:nil];
[UIView setAnimationDuration:0.5f];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationRepeatAutoreverses:NO];
//以下四种效果
/*
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES];//oglFlip, fromLeft
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES];//oglFlip, fromRight
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self.view cache:YES];
*/
[self.view exchangeSubviewAtIndex:1 withSubviewAtIndex:0];
[UIView commitAnimations];
IOS4.0新方法:
方法: +(void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations;
+ (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion; //多一个动画结束后可以执行的操作.
//下边是嵌套使用,先变大再消失的动画效果.
[UIView animateWithDuration:1.25 animations:^{
CGAffineTransform newTransform = CGAffineTransformMakeScale(1.2, 1.2);
[firstImageView setTransform:newTransform];
[secondImageView setTransform:newTransform];}
completion:^(BOOL finished){
[UIView animateWithDuration:1.2 animations:^{
[firstImageView setAlpha:0];
[secondImageView setAlpha:0];} completion:^(BOOL finished){
[firstImageView removeFromSuperview];
[secondImageView removeFromSuperview]; }];
}];
cocoachina有一个例子UIViewDemo,传送门:http://www.cocoachina.com/bbs/read.php?tid-11820.html
分享到:
相关推荐
它提供了强大的图形渲染和用户体验设计能力,其中包括各种动画效果。本压缩包文件包含了一系列WPF动画效果的例子,可以帮助开发者深入理解和实践这些技术。 在WPF中,动画是通过Timeline类和Storyboard类来实现的。...
本文将对iOS中的各种动画效果进行详细的总结,并探讨实现这些效果的不同途径。 首先,我们来看iOS中最基础的动画类型:Core Animation。Core Animation是Apple提供的一套强大的2D图形渲染和动画框架,它允许开发者...
本篇将详细探讨ListView的各种动画效果及其实现方式。 1. **基本概念** - **ListView**: 是Android SDK中的一个视图组件,用于显示一系列可滚动的项目。每个项目可以是自定义的视图,通常包含文本和图像。 - **...
本篇文章将深入探讨如何在iOS应用中集成各种动画效果,包括视图动画、核心动画(Core Animation)、转场动画以及自定义动画。 一、视图动画(UIView Animation) 视图动画是最基础的动画类型,适用于简单快速的过渡...
这个项目"各种动画效果的Dialog和测试类"提供了一种创新的方式,通过添加丰富的动画效果来提升Dialog的用户体验。它由两个主要部分组成:NiftyDialogEffectsLib和NiftyDialogEffectsTest。 NiftyDialogEffectsLib是...
iPhone的各种动画效果不仅能让用户界面更加生动有趣,还能增强交互性,使应用的操作流程更加流畅。本资料包“iphone的各种动画效果”提供了一系列的动画实例,旨在帮助开发者直接查看并学习如何在自己的应用中实现...
在Android开发中,ListView...总之,通过这个压缩包,你可以学习如何在Android应用中为ListView添加各种动画效果,从而提升用户体验并增强应用的视觉吸引力。记得结合源码和文档进行实践,以更好地理解和掌握这些技术。
然后,通过View的onDraw()方法,在每一帧中更新Path的状态,配合Animation或者ValueAnimator,就可以实现Path的动态变化,从而创建出各种动画效果。例如,你可以创建一个沿着特定Path移动的图标,或者让Path本身随着...
"Android各种动画效果全有"这个资源集包含了Android平台上多种类型的动画效果,旨在帮助开发者们实现丰富的用户界面动态表现。 首先,我们来深入了解一下Android中的动画系统。Android提供了两种主要的动画机制:...
本文将深入探讨在Android中实现的各种动画效果,包括旋转动画、折叠翻转、点赞动画、折叠书架、按钮切换动画以及模糊动画等。 1. **旋转动画**: 旋转动画在Android中可以通过` RotateAnimation `类来实现。开发者...
本资源“listview 的各种动画效果.zip”包含了一个JavaApk源码示例,展示了如何为ListView添加各种动画效果。以下是关于ListView动画效果的一些关键知识点: 1. **默认动画**: - ListView默认提供了简单的滚动...
本文将深入探讨iOS视图的各种动画效果,包括翻页、淡入淡出等常见且重要的动画技术。这些效果可以通过UIKit框架中的Core Animation层来实现,为应用程序增添动态美感。 首先,我们来谈谈"翻页"效果。这种效果通常在...
本资源"Android应用源码之listview 的各种动画效果_应用.zip"显然包含了关于如何为ListView添加各种动画效果的源代码示例。接下来,我们将深入探讨ListView动画效果的相关知识点。 1. **ListView基础知识**:...
这个“android listview的各种动画效果Demo.zip”文件显然包含了一些示例,展示了如何在ListView中实现各种动画效果。下面将详细讨论ListView的动画效果及其实现方法。 1. **Item插入动画**: 当新的数据项被添加...
本资料包“安卓开发-listview 的各种动画效果.zip”可能包含了关于如何在ListView中实现各种动画效果的示例代码和教程。下面将详细探讨ListView动画的实现原理和常见种类。 1. **基本动画** - **淡入淡出**:当新...
在这个“Android各种动画效果的ViewPager”主题中,我们将深入探讨如何利用ViewPager来实现丰富的动画效果,提升用户的交互体验。 首先,ViewPager的基本用法是通过适配器(PagerAdapter或FragmentPagerAdapter)来...