zoukankan      html  css  js  c++  java
  • 自定义对话框AlterView

    - (void)show;

    {

        self.hidden = NO;

        CAKeyframeAnimation *animation = [CAKeyframeAnimation

                                          animationWithKeyPath:@"transform"];

        

        CATransform3D scale1 = CATransform3DMakeScale(0.5, 0.5, 1);

        CATransform3D scale2 = CATransform3DMakeScale(0.8, 0.8, 1);

        CATransform3D scale3 = CATransform3DMakeScale(0.9, 0.9, 1);

        CATransform3D scale4 = CATransform3DMakeScale(1.0, 1.0, 1);

        

        NSArray *frameValues = [NSArray arrayWithObjects:

                                [NSValue valueWithCATransform3D:scale1],

                                [NSValue valueWithCATransform3D:scale2],

                                [NSValue valueWithCATransform3D:scale3],

                                [NSValue valueWithCATransform3D:scale4],

                                nil];

        [animation setValues:frameValues];

        

        NSArray *frameTimes = [NSArray arrayWithObjects:

                               [NSNumber numberWithFloat:0.0],

                               [NSNumber numberWithFloat:0.5],

                               [NSNumber numberWithFloat:0.9],

                               [NSNumber numberWithFloat:1.0],

                               nil];

        [animation setKeyTimes:frameTimes];

        

        animation.fillMode = kCAFillModeForwards;

        animation.removedOnCompletion = NO;

        animation.duration = .2;

        

        [self.layer addAnimation:animation forKey:@"popup"];

    }

    - (void)dissmiss;

    {

        self.hidden = YES;

        CAKeyframeAnimation *animation = [CAKeyframeAnimation

                                          animationWithKeyPath:@"transform"];

        

        CATransform3D scale1 = CATransform3DMakeScale(1.0, 1.0, 1);

        CATransform3D scale2 = CATransform3DMakeScale(0.7, 0.7, 1);

        CATransform3D scale3 = CATransform3DMakeScale(0.3, 0.3, 1);

        CATransform3D scale4 = CATransform3DMakeScale(0, 0, 1);

        

        NSArray *frameValues = [NSArray arrayWithObjects:

                                [NSValue valueWithCATransform3D:scale1],

                                [NSValue valueWithCATransform3D:scale2],

                                [NSValue valueWithCATransform3D:scale3],

                                [NSValue valueWithCATransform3D:scale4],

                                nil,nil];

        [animation setValues:frameValues];

        

        NSArray *frameTimes = [NSArray arrayWithObjects:

                               [NSNumber numberWithFloat:0.0],

                               [NSNumber numberWithFloat:0.5],

                               [NSNumber numberWithFloat:0.9],

                               [NSNumber numberWithFloat:1.0],

                               nil,nil];

        [animation setKeyTimes:frameTimes];

        

        animation.fillMode = kCAFillModeForwards;

        animation.removedOnCompletion = NO;

        animation.duration = .2;

        

        [self.layer addAnimation:animation forKey:@"popup"];

    }

  • 相关阅读:
    Linux系统挂载存储只读改成读写
    Linux kernel调试方法
    Linux设备树文件结构与解析深度分析
    #undef常用法
    Linux驱动中的platform总线分析
    在根文件系统中查看设备树(有助于调试)
    友元及操作符重载
    STM32 FLASH 擦除(以及防止误擦除程序代码)、写入
    C++学习笔记49:栈
    C++学习笔记48:链表的基本操作
  • 原文地址:https://www.cnblogs.com/PressII/p/4040615.html
Copyright © 2011-2022 走看看