码迷,mamicode.com
首页 > 移动开发 > 详细

iOS 动画类型 笔记

时间:2014-06-11 11:13:59      阅读:275      评论:0      收藏:0      [点我收藏+]

标签:ext   com   get   set   cti   os   

#pragma mark Core Animation

- (IBAction)buttonPressed1:(id)sender {

    UIButton *button = (UIButton *)sender;

    NSInteger tag = button.tag;

    

    CATransition *animation = [CATransitionanimation];

    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.viewexchangeSubviewAtIndex:green withSubviewAtIndex:blue];

    

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

}

 

#pragma mark UIView动画

- (IBAction)buttonPressed2:(id)sender {

    UIButton *button = (UIButton *)sender;

    NSInteger tag = button.tag;

    

    CGContextRef context = UIGraphicsGetCurrentContext();

    [UIViewbeginAnimations:nilcontext:context];

    [UIViewsetAnimationCurve:UIViewAnimationCurveEaseInOut];

    [UIViewsetAnimationDuration:kDuration];

    switch (tag) {

        case 105:

            [UIViewsetAnimationTransition:UIViewAnimationTransitionCurlDownforView:self.viewcache:YES];

            break;

        case 106:

            [UIViewsetAnimationTransition:UIViewAnimationTransitionCurlUpforView:self.viewcache:YES];

            break;

        case 107:

            [UIViewsetAnimationTransition:UIViewAnimationTransitionFlipFromLeftforView:self.viewcache:YES];

            break;

        case 108:

            [UIViewsetAnimationTransition:UIViewAnimationTransitionFlipFromRightforView:self.viewcache:YES];

            break;

        default:

            break;

    }

    

    NSUInteger green = [[self.view subviews] indexOfObject:self.greenView];

    NSUInteger blue = [[self.view subviews] indexOfObject:self.blueView];

    [self.viewexchangeSubviewAtIndex:green withSubviewAtIndex:blue];

    

    [UIViewsetAnimationDelegate:self];

    // 动画完毕后调用某个方法

    //[UIView setAnimationDidStopSelector:@selector(animationFinished:)];

    [UIViewcommitAnimations];

}

 

iOS 动画类型 笔记,布布扣,bubuko.com

iOS 动画类型 笔记

标签:ext   com   get   set   cti   os   

原文地址:http://www.cnblogs.com/ctaodream/p/3772780.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!