zoukankan      html  css  js  c++  java
  • iOS常用动画

    #pragma mark Core Animation
    - (IBAction)buttonPressed1:(id)sender {
        NSLog(@"1");
        UIButton *button = (UIButton *)sender;
        NSInteger tag = button.tag;
        
        CATransition *animation = [CATransition animation];
        animation.delegate = self;
        animation.duration = kDuration;
        animation.timingFunction = UIViewAnimationCurveEaseInOut;
        
        switch (tag) {
            case 101:
                animation.type = kCATransitionFade;
                break;
            case 102:
                animation.type = kCATransitionPush;
                break;
            case 103:
                animation.type = kCATransitionReveal;
                break;
            case 104:
                animation.type = kCATransitionMoveIn;
                break;
            case 201:
                animation.type = @"cube";
                break;
            case 202:
                animation.type = @"suckEffect";
                break;
            case 203:
                animation.type = @"oglFlip";
                break;
            case 204:
                animation.type = @"rippleEffect";
                break;
            case 205:
                animation.type = @"pageCurl";
                break;
            case 206:
                animation.type = @"pageUnCurl";
                break;
            case 207:
                animation.type = @"cameraIrisHollowOpen";
                break;
            case 208:
                animation.type = @"cameraIrisHollowClose";
                break;
            default:
                break;
        }
        
        switch (self.typeId) {
            case 0:
                animation.subtype = kCATransitionFromLeft;
                break;
            case 1:
                animation.subtype = kCATransitionFromBottom;
                break;
            case 2:
                animation.subtype = kCATransitionFromRight;
                break;
            case 3:
                animation.subtype = kCATransitionFromTop;
                break;
            default:
                break;
        }
        self.typeId += 1;
        if (self.typeId > 3) {
            self.typeId = 0;
        }
        
        NSUInteger green = [[self.view subviews] indexOfObject:self.greenView];
        NSUInteger blue = [[self.view subviews] indexOfObject:self.blueView];
        [self.view exchangeSubviewAtIndex:green withSubviewAtIndex:blue];
        
        [[self.view layer] addAnimation:animation forKey:@"animation"];
        
    }
    #pragma mark UIView动画
    - (IBAction)buttonPressed2:(id)sender {
        NSLog(@"2");
    
        UIButton *button = (UIButton *)sender;
        NSInteger tag = button.tag;
        
        CGContextRef context = UIGraphicsGetCurrentContext();
        [UIView beginAnimations:nil context:context];
        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
        [UIView setAnimationDuration:kDuration];
        
        switch (tag) {
            case 105:
                [UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self.view cache:YES];
                break;
            case 106:
                [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];
                break;
            case 107:
                [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES];
                break;
            case 108:
                [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES];
                break;
            default:
                break;
        }
        
        NSUInteger green = [[self.view subviews] indexOfObject:self.greenView];
        NSUInteger blue = [[self.view subviews] indexOfObject:self.blueView];
        [self.view exchangeSubviewAtIndex:green withSubviewAtIndex:blue];
        
        [UIView setAnimationDelegate:self];
        // 动画完毕后调用某个方法
        //[UIView setAnimationDidStopSelector:@selector(animationFinished:)];
        [UIView commitAnimations];
    }
  • 相关阅读:
    luogu_1414 又是毕业季II
    luogu_1372 又是毕业季I
    luogu_1313 计算系数
    luogu_1134 阶乘问题
    luogu_1514 引水入城
    luogu_1120 小木棍
    文件操作
    快速排序
    c oth
    ANSI C与C89、C99、C11区别差异
  • 原文地址:https://www.cnblogs.com/sunjianfei/p/5905647.html
Copyright © 2011-2022 走看看