zoukankan      html  css  js  c++  java
  • CATransition(转场动画)基本属性

    //CA_EXTERN NSString * const kCATransitionFade
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    //CA_EXTERN NSString * const kCATransitionMoveIn
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    //CA_EXTERN NSString * const kCATransitionPush
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    //CA_EXTERN NSString * const kCATransitionReveal
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    
    /* Common transition subtypes. */
    
    //CA_EXTERN NSString * const kCATransitionFromRight
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    //CA_EXTERN NSString * const kCATransitionFromLeft
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    //CA_EXTERN NSString * const kCATransitionFromTop
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    //CA_EXTERN NSString * const kCATransitionFromBottom
    //__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
    
    /**
     *  上一张
     */
    - (IBAction)previous {
        //索引加1 ,1
        self.count--;
        //创建转场对象
        CATransition *animation = [CATransition animation];
        
        /* 过渡效果 */
        //fade     //交叉淡化过渡(不支持过渡方向) kCATransitionFade
        //push     //新视图把旧视图推出去  kCATransitionPush
        //moveIn   //新视图移到旧视图上面   kCATransitionMoveIn
        //reveal   //将旧视图移开,显示下面的新视图  kCATransitionReveal
        
        ///******下面几个也是过渡效果,但它们是私有API效果,使用的时候要小心,可能会导致app审核不被通过***/
        //cube     //立方体翻滚效果
        //oglFlip  //上下左右翻转效果
        //suckEffect   //收缩效果,如一块布被抽走(不支持过渡方向)
        //rippleEffect //滴水效果(不支持过渡方向)
        //pageCurl     //向上翻页效果
        //pageUnCurl   //向下翻页效果
        //cameraIrisHollowOpen  //相机镜头打开效果(不支持过渡方向)
        //cameraIrisHollowClose //相机镜头关上效果(不支持过渡方向)
    
        
        //设定转场的动画模式
        animation.type = @"push";
        //设定转场fangXiang
        animation.subtype = @"fromTop";
        //ABS()可以取绝对值
        NSString *imageName = [NSString stringWithFormat:@"%zd",ABS(self.count % 7) + 1];
        self.iconView.image = [UIImage imageNamed:imageName];
        
        [self.iconView.layer addAnimation:animation forKey:nil];
    }
    /**
     *  下一张
     */
    - (IBAction)next {
        
        //索引加1 ,1
        self.count++;
        //创建转场对象
        CATransition *animation = [CATransition animation];
        
        //设定转场的动画模式
        animation.type = kCATransitionFade;
        //设定转场fangXiang
        animation.subtype = kCATransitionFromRight;
        //ABS()可以取绝对值
        NSString *imageName = [NSString stringWithFormat:@"%zd",ABS(self.count % 7) + 1];
        self.iconView.image = [UIImage imageNamed:imageName];
        
        [self.iconView.layer addAnimation:animation forKey:nil];
        
        
    }
  • 相关阅读:
    CentOS 6.5 安装 VNC Server
    vs2008出错
    MySQL 尽量避免使用 TIMESTAMP
    excel中生成32位随机id
    库存扣减和锁
    精通 MySQL 索引
    Java代码性能优化
    RocketMQ 消息丢失场景分析及如何解决
    Java 8 的内存结构
    Spring Boot + MyBatis + MySQL 实现读写分离
  • 原文地址:https://www.cnblogs.com/neilHoIOS/p/4628539.html
Copyright © 2011-2022 走看看