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动画护展的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MYSQL性能调优及架构设计学习笔记-基
- 下一篇: 一起谈.NET技术,初识Silverli