澳门威利斯人_威利斯人娱乐「手机版」

来自 办公软件 2020-03-18 05:12 的文章
当前位置: 澳门威利斯人 > 办公软件 > 正文

画面切换的各种动画效果附私有API,自定义转场

CATransition是CAAnimationd的子类。

CATransition 是CAAnimation的子类,用于调节器和调整器之间的转场动漫。可以来自定义系统的push和present。达成页面间的卡通效果。

  • 首先上原文
    ios的镜头切换的动漫效果的API重要透过调用系统已定义的卡通片效果完成,这几个职能已基本蕴涵开采的必要,假若急需更进一竿深入骨髓的功效,可以虚构CATransition来促成

CATransition的type属性是转场动漫类型:

图片 1CAAnimation 关系图

以下是基本的多种作用
kCATransitionPush 推入效果
kCATransitionMoveIn 移入效果
kCATransitionReveal 截开效果
kCATransitionFade 渐入渐出功用

以下是两种合法的主干效用:

kCATransitionPush 推入效果kCATransitionMoveIn 移入效果kCATransitionReveal 截开效果kCATransitionFade 渐入渐出效果与利益

私下认可值是fade

  • 始建转场动漫
  • 安装转场类型、子类型及其余品质画
  • 设置转场后的新视图并增添动画到图层

以下API效果能够安全使用
cube 方块
suckEffect 三角
rippleEffect 水波抖动
pageCurl 上翻页
pageUnCurl 下翻页
oglFlip 上下翻转
cameraIrisHollowOpen 镜头快门开
cameraIrisHollowClose 镜头快门开

以下两有个别是私有API:

ios的画面切换的动漫片效果的API首要透过调用系统已定义的卡通效果完结,这么些效应已基本囊括开采的急需,假如急需更进一层目不暇接的效果与利益,能够虚构CATransition来促成。

以下API效果请慎用
spewEffect 新版面在显示器下方中间地点被释放出来覆盖旧版面.
genieEffect 旧版面在荧屏左下方或右下方被吸走, 显示出上边包车型大巴新版面
unGenieEffect 新版面在荧屏左下方或右下方被释放出来覆盖旧版面.
twist 版面以水平方向像龙卷风式转出来.
tubey 版面垂直附有弹性的转出来.
swirl 旧版面360度旋转并脱离, 呈现出新版面.
charminUltra 旧版面淡出并体现新版面.
zoomyIn 新版面由小放大走到前方, 旧版面放大由前边消失.
zoomyOut 新版面荧屏外面缩放现身, 旧版面减弱消失.
oglApplicationSuspend 像按”home” 开关的效果.

1. 得以无虑无忧采用的API效果:

cube 方块suckEffect 三角rippleEffect 水波抖动pageCurl 上翻页pageUnCurl 下翻页oglFlip 上下翻转cameraIrisHollowOpen 镜头快门开camera艾丽丝HollowClose 镜头快门开

以下是骨干的多样功效

动漫效果的用法
<pre>
CATransition *animation = [CATransition animation];
animation.duration = 10.5f;
animation.timingFunction = UIViewAnimationCurveEaseInOut;
animation.fillMode = kCAFillModeForwards;
//基本型
animation.type = kCATransitionPush;
//私有API,字符串型
animation.type = "cube";
[self.view.layer addAnimation:animation forKey:@"animation”];
</pre>

2. 以下API效果请慎用

spewEffect 新版面在显示器下方中间地点被释放出来覆盖旧版面.genieEffect 旧版面在荧屏左下方或右下方被吸走, 呈现出上边包车型客车新版面unGenieEffect 新版面在显示器左下方或右下方被释放出来覆盖旧版面.twist 版面以水平方向像暴风式转出来.tubey 版面垂直附有弹性的转出来.swirl 旧版面360度旋转并退出, 展现出新版面.charminUltra 旧版面淡出并显示新版面.zoomyIn 新版面由小放大走到前面, 旧版面放大由前边消失.zoomyOut 新版面荧屏外面缩放现身, 旧版面缩短消失.oglApplicationSuspend 像按”home” 开关的效果.

*subtype属性对应动画的活动方向,合法的有多种,即fromLeft, fromRight, fromTopfromBottom.*

先是用可视化成立四个UIView和叁个按键。

图片 2制造八个UIView和二个开关

涉嫌成属性:

@interface ViewController ()@property (weak, nonatomic) IBOutlet UIView *testView;@end

按键点击事件如下:

- testAction:(UIButton *)sender { //创建layer过渡动画 CATransition *transition = [CATransition animation]; //设置持续时间 transition.duration = 2; //设置过度方向 transition.subtype = kCATransitionMoveIn; //设置过渡效果 transition.type = @"pageUnCurl"; //在图层上添加动画。注:layer上每一个key只对应一个动画。key也可以设为nil。 [_testView.layer addAnimation:transition forKey:@"test"];}

点击按键后起头动漫:

图片 3图片 4示例1

再来看一种跳转页面包车型客车动画片效果。首先给视图调整器增加导航调整器,增添叁个UIBarButtonItem恐怕在视图上加上普通UIButton。

图片 5丰裕领航调整器和UIBarButtonItem

新建叁个视图调节器类SecondViewController,设背景颜色。

self.view.backgroundColor = [UIColor cyanColor];

增多点击事件如下:

- toNextVC:sender { CATransition *transition = [CATransition animation]; transition.duration = 2; transition.type = @"rippleEffect"; //此为波纹效果,其他效果请自行尝试 //把动画添加到导航控制器的视图的图层上 [self.navigationController.view.layer addAnimation:transition forKey:nil]; //初始化要跳转到的视图控制器 SecondViewController *secondVC = [[SecondViewController alloc]init]; //跳转 [self.navigationController showViewController:secondVC sender:nil];}

效用如图:

图片 6图片 7图片 8示例2效果

kCATransitionPush 推入效果kCATransitionMoveIn 移入效果kCATransitionReveal 截开效果kCATransitionFade 渐入渐出效果

本文由澳门威利斯人发布于办公软件,转载请注明出处:画面切换的各种动画效果附私有API,自定义转场

关键词: 澳门威利斯人 IOS 自定义 转场 动画