欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

COCOA的UIVIEW动画护展

发布时间:2025/4/16 编程问答 39 豆豆
生活随笔 收集整理的这篇文章主要介绍了 COCOA的UIVIEW动画护展 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

2019独角兽企业重金招聘Python工程师标准>>>

#import "UIViewAnimation.h"

@implementation UIView (UIView_Animation)

- (void)transition:(UIView *)view1 

             view2:(UIView *)view2 

              type:(NSInteger)type 

           subType:(NSInteger)subType {

CATransition *transition = [CATransition animation];

    transition.delegate = self;

transition.duration = 0.45;

transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];

    transition.fillMode = kCAFillModeForwards;

transition.endProgress = 1;//slider.value;

transition.removedOnCompletion = NO;

NSString *types[12] = {kCATransitionPush,kCATransitionMoveIn, kCATransitionReveal, kCATransitionFade,@"cube",@"suckEffect",@"oglFlip",@"rippleEffect",@"pageCurl",@"pageUnCurl",@"cameraIrisHollowOpen ",@"cameraIrisHollowClose "};

NSString *subtypes[4] = {kCATransitionFromLeft, kCATransitionFromRight, kCATransitionFromTop, kCATransitionFromBottom};

transition.type = types[type];

    transition.subtype = subtypes[subType];

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

view1.hidden = YES;

view2.hidden = NO;

}

- (void)viewAnimation:(NSInteger)index 

                view1:(UIView *)view1 

                view2:(UIView *)view2 

{

[UIView beginAnimations:@"animationID" context:nil];

[UIView setAnimationDuration:0.45f];

[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];

[UIView setAnimationRepeatAutoreverses:NO];

switch (index) {

case :

[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self cache:YES];//oglFlip, fromLeft 

break;

case 1:

[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self cache:YES];//oglFlip, fromRight  

break;

case 2:

[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self cache:YES];

break;

case 3:

[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self cache:YES];

break;

default:

break;

}

view1.hidden = YES;

view2.hidden = NO;

    [UIView commitAnimations];

}

- (void)popup:(CGRect)rect {

    

[UIView beginAnimations:nil context:nil];

[UIView setAnimationDuration:0.2];

[UIView setAnimationCurve:UIViewAnimationCurveLinear];

[self setFrame:rect];

[UIView commitAnimations];

}

@end

转载于:https://my.oschina.net/ahuaahua/blog/30621

总结

以上是生活随笔为你收集整理的COCOA的UIVIEW动画护展的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。