zoukankan      html  css  js  c++  java
  • 转场动画CATransition~~~~~~

    •CATransition是CAAnimation的子类,用于做转场动画,能够为层提供移出屏幕和移入屏幕的动画效果。iOS比Mac OS X的转场动画效果少一点
    •UINavigationController就是通过CATransition实现了将控制器的视图推入屏幕的动画效果
    •动画属性:
    –type:动画过渡类型
    –subtype:动画过渡方向
    –startProgress:动画起点(在整体动画的百分比)
    –endProgress:动画终点(在整体动画的百分比)
     
    转场动画使用步骤~
      // 转场动画
        CATransition *transition = [[CATransition alloc] init];
        
        // 类型
        transition.type = @"fade";
    //子类型
        transition.subtype = kCATransitionFromRight;
    
        transition.duration = 0.5f;
        
        [self.view.layer addAnimation:transition forKey:nil];

    在addAnimation之前给当前的view做操作就行了,然后addAnimation以后,这个操作会随动画执行(例如改变背景色等,或者改变子view也会跟随动画执行)

    上面的type属性设置的是fade.这是淡入淡出的效果,当然还有其他的效果,见下表~

    类型字符串

    效果说明

    关键字

    方向

    fade

    交叉淡化过渡

    YES

     

    push

    新视图把旧视图推出去

    YES

     

    moveIn

    新视图移到旧视图上面

    YES

     

    reveal

    将旧视图移开,显示下面的新视图

    YES

     

    cube

    立方体翻滚效果

       

    oglFlip

    上下左右翻转效果

       

    suckEffect

    收缩效果,如一块布被抽走

     

    NO

    rippleEffect

    水滴效果

     

    NO

    pageCurl

    向上翻页效果

       

    pageUnCurl

    向下翻页效果

       

    cameraIrisHollowOpen

    相机镜头打开效果

     

    NO

    cameraIrisHollowClose

    相机镜头关闭效果

     

    NO

    因为转场动画使用比较频繁,所以UIKit框架封装了转场动画

    下面是单视图转场

    •+ (void)transitionWithView:(UIView *)view duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;
    •参数说明:
    –duration:动画的持续时间
    –view:需要进行转场动画的视图
    –options:转场动画的类型
    –animations:将改变视图属性的代码放在这个block中

    completion:动画结束后,会自动调用这个block

    下面是双视图转场

    •+ (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options completion:(void (^)(BOOL finished))completion;
    •参数说明:
    –duration:动画的持续时间
    –options:转场动画的类型
    –animations:将改变视图属性的代码放在这个block中
    –completion:动画结束后,会自动调用这个block
     
    •转场动画存在的问题——动画过程中无法交互
    –如果要在切换时实现交互效果需要使用UIScrollView+ UIPageControl
  • 相关阅读:
    毕业四年,你赚回四年的花费了吗?
    【转】解决VS2008 开发Windows Mobile 项目生成速度慢的问题
    WinCE/Mobile上下滑动浏览DataGrid数据 【转】
    【转】取得汉字拼音的首字母
    漂亮的 Windows Mobile 按钮
    SQLite中的常用操作(总结)
    浅谈HTTP中Get与Post的区别
    Oracle学习之数组
    firefox与ie 的javascript区别
    常用bash shell 脚本
  • 原文地址:https://www.cnblogs.com/xyzaijing/p/3855251.html
Copyright © 2011-2022 走看看