iOS CATransition 动画的简单使用
下面是实现的代码
//选择动画
- (IBAction)selectAnimationTypeButton:(id)sender {
UIButton *button = sender;
animationType animationType = button.tag;
NSString *subtypeString;
switch (_subType) {
case 0:
subtypeString = kCATransitionFromLeft;
break;
case 1:
subtypeString = kCATransitionFromBottom;
break;
case 2:
subtypeString = kCATransitionFromRight;
break;
case 3:
subtypeString = kCATransitionFromTop;
break;
default:
break;
}
_subType += 1;
if (_subType > 3) {
_subType = 0;
}
switch (animationType) {
case Fade:
[self transitionWithType:kCATransitionFade withSubtype:subtypeString forView:self.view];
break;
case Push:
[self transitionWithType:kCATransitionPush withSubtype:subtypeString forView:self.view];
break;
case Reveal:
[self transitionWithType:kCATransitionReveal withSubtype:subtypeString forView:self.view];
break;
case MoveIn:
[self transitionWithType:kCATransitionMoveIn withSubtype:subtypeString forView:self.view];
break;
case Cube:
[self transitionWithType:@"cube" withSubtype:subtypeString forView:self.view];
break;
case SuckEffect:
[self transitionWithType:@"suckEffect" withSubtype:subtypeString forView:self.view];
break;
case OgleFlip:
[self transitionWithType:@"oglFlip" withSubtype:subtypeString forView:self.view];
break;
case RippleEffect:
[self transitionWithType:@"rippleEffect" withSubtype:subtypeString forView:self.view];
break;
case PageCurl:
[self transitionWithType:@"pageCurl" withSubtype:subtypeString forView:self.view];
break;
case pageUnCurl:
[self transitionWithType:@"pageUnCurl" withSubtype:subtypeString forView:self.view];
break;
case CameraIrisHollowOpen:
[self transitionWithType:@"cameraIrisHollowOpen" withSubtype:subtypeString forView:self.view];
break;
case CameraIrisHollowClose:
[self transitionWithType:@"cameraIrisHollowClose" withSubtype:subtypeString forView:self.view];
break;
case CurlDow:
[self animationWithView:self.view withAnimationTransition:UIViewAnimationTransitionCurlDown];
break;
case CurlUp:
[self animationWithView:self.view withAnimationTransition:UIViewAnimationTransitionCurlUp];
break;
case FlipFromLeft:
[self animationWithView:self.view withAnimationTransition:(UIViewAnimationTransitionFlipFromLeft)];
break;
case FlipFromRight:
[self animationWithView:self.view withAnimationTransition:(UIViewAnimationTransitionFlipFromRight)];
break;
default:
break;
}
static int i = 1;
if (i > 6) {
i = 1;
}
[self addBackgroundImgWithName:[NSString stringWithFormat:@"0%d.jpg",i]];
i += 1;
}
#pragma CATransition========动画实现=======
- (void)transitionWithType:(NSString*) type withSubtype:(NSString*)subType forView:(UIView*)view{
//创建CATranstion对象
CATransition *animation = [CATransition animation];
//设置运动时间
animation.duration = DURATION;
//设置动画的类型type
animation.type = type;
if (subType != nil) {
//设置子类
animation.subtype = subType;
}
//设置动画出现的时候的运动速度
animation.timingFunction = UIViewAnimationOptionCurveEaseInOut;
[view.layer addAnimation:animation forKey:@"animation"];
}
#pragma mark ============UIView动画实现=============
- (void)animationWithView:(UIView*)view withAnimationTransition:(UIViewAnimationTransition)transtion{
[UIView animateWithDuration:DURATION animations:^{
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationTransition:transtion forView:view cache:YES];
}];
}
- (void)addBackgroundImgWithName:(NSString*)imgeName{
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:imgeName]];
}
代码放到github上,喜欢就给个Star:https://github.com/JakeTorres/Jake-sHouse
iOS CATransition 动画的简单使用的更多相关文章
- iOS中动画的简单使用
iOS中的动画右两大类1.UIView的视图动画2.Layer的动画 UIView的动画也是基于Layer的动画动画的代码格式都很固定 1.UIView动画 一般方式[UIView beginAnim ...
- [iOS]过渡动画之高级模仿 airbnb
注意:我为过渡动画写了两篇文章:第一篇:[iOS]过渡动画之简单模仿系统,主要分析系统简单的动画实现原理,以及讲解坐标系.绝对坐标系.相对坐标系,坐标系转换等知识,为第二篇储备理论基础.最后实现 Ma ...
- iOS block-base 动画简单用法+关键帧动画设置线性变化速度的问题
本文转载至 http://www.tuicool.com/articles/aANBF3m 时间 2014-12-07 20:13:37 segmentfault-博客原文 http://segm ...
- iOS开发——动画编程Swift篇&(三)CATransition动画
CATransition动画 // MARK: - CATransition动画 // /* 动画样式 */ // let kCATransitionFade: NSString! //翻页 // l ...
- iOS开发CAAnimation类动画, CATransition动画
#pragma mark - CAAnimation类.实现动画 #pragma mark ** CABasicAnimation 动画 - (IBAction)handleCABasicAnimat ...
- IOS 动画专题 --iOS核心动画
iOS开发系列--让你的应用“动”起来 --iOS核心动画 概览 通过核心动画创建基础动画.关键帧动画.动画组.转场动画,如何通过UIView的装饰方法对这些动画操作进行简化等.在今天的文章里您可以看 ...
- ios 学习动画的套路 (一)
你也肯定喜欢炫酷的动画! 在APP中,动画就是一个点睛之笔!可以给用户增加一些独特的体验感,估计也有许多的和我一样的,看着那些觉得不错的动画,也就只能流口水的孩子,毕竟~不知道从哪里下手去写!会连续的 ...
- ios基础动画、关键帧动画、动画组、转场动画等
概览 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌.在这里你可以看到iOS中如何使用图层精简非交互式绘图,如何通过核心动画创建基础动画.关键帧动画 ...
- iOS 核心动画 Core Animation浅谈
代码地址如下:http://www.demodashi.com/demo/11603.html 前记 关于实现一个iOS动画,如果简单的,我们可以直接调用UIView的代码块来实现,虽然使用UIVie ...
随机推荐
- 解决移动端真机不能下拉滚动bug
在近期的移动端开发中,发现浏览器中调试可以正常滚动,而在真机中却不能滚动了,这是为什么呢??? 总结了一下主要有一下两方面:css的设置和js的设置 1.之前有设置css的原因,下面分先说css的问题 ...
- scrapy 入门爬取新闻
为文本分类实验爬取数据集,要求一百万,分类>10类. 参考链接:http://litianyi.cc/technology/2015/12/01/text-classification-1/ 文 ...
- js时间过滤方法
js时间过滤 自己写的 记录一下 /** * * 过滤时间格式 * Created by Catlina at 2019.4.26 */ export const setTime = time = ...
- 【转载】 [unreal4入门系列之七] UE4中的Actor类和Pawn类
原文地址: http://www.52vr.com/article-558-1.html 现在我们开始进入UE4的代码开发工作.首先,UE4的类框架是非常庞大的,看起来有点让人措手不及.不过正因为UE ...
- LogFilter
(一)Filter 在Java EE中,Filter是一个可以将请求和响应的头部或内容进行转换的一个对象.包括 (1)认证Filter (2)日志和审核Filter (3)图片转换Filt ...
- canvas初体验
利用画布,绘制随机大小,颜色,位置 方框<!DOCTYPE html> <html lang="en"> <head> <meta cha ...
- LeetCode算法历程-02
编写一个程序判断给定的数是否为丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示例 1: 输入: 6 输出: true 解释: 6 = 2 × 3 示例 2: 输入: 8 输出: true ...
- tomcat中配置ssl的http协议
问题: IDEA配置tomcat后运行时报如下错误: Error running wis-client-web: SSL HTTP Connector node not found: set up o ...
- 说一说js中的闭包
不说官方给的定义,感觉自己刚开始看也不是很理解. 闭包 : 其实就是 该函数能使用函数外定义的变量. 为什么要使用闭包? 首先来说一下局部变量和全局变量的危害: 全局变量容易全局污染,局部变量又无法共 ...
- eclipse Android项目 DDMS db文件 导出 Failed to pull selection null 问题
我在 eclipse的Android项目中,在 DDMS导出db文件 时,发现报错:Failed to pull selection null 在左侧选中设备,在进行导出 这样就可以正常的进行导出db ...