iOS 在控制器间跳转实现过渡动画

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_19963691/article/details/60333216

需求:只有登录成功后才能看到App tabbar界面的详情。
我的做法是,登录界面设置成入口控制器。
登录验证成功之后,在登录控制器代码里切换根控制器。被动的界面切换。

    UIStoryboard * MainSb  = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
    [UIApplication sharedApplication].keyWindow.rootViewController = [MainSb instantiateInitialViewController];

之后发现直接presentViewController就可以实现跳转。

[self presentViewController:[MainSb instantiateInitialViewController]
                   animated:NO completion:nil];
 然后发现界面跳转的时候 通过CALayer下的CATransition动画可以实现一些界面跳转的动画。
MyViewController *myVC = [[MyViewController alloc]init];
 //创建动画
 CATransition *animation = [CATransition animation];
 //设置运动轨迹的速度
 animation.timingFunction = UIViewAnimationCurveEaseInOut;
 //设置动画类型为立方体动画
 animation.type = @"cube";
 //设置动画时长
 animation.duration =0.5f;
 //设置运动的方向
 animation.subtype =kCATransitionFromRight;
 //控制器间跳转动画
 [[UIApplication sharedApplication].keyWindow.layer addAnimation:animation forKey:@"animation"];
[self presentViewController:myVC animated:NO completion:nil];

下面附上一些常用的动画类型:
 Fade = 1, //淡入淡出
Push, //推挤
Reveal, //揭开
MoveIn, //覆盖
Cube, //立方体
SuckEffect, //吮吸
OglFlip, //翻转
RippleEffect, //波纹
PageCurl, //翻页
PageUnCurl, //反翻页
CameraIrisHollowOpen, //开镜头
CameraIrisHollowClose, //关镜头
CurlDown, //下翻页
CurlUp, //上翻页
FlipFromLeft, //左翻转
FlipFromRight, //右翻转

没有更多推荐了,返回首页