设为首页 加入收藏

TOP

CABasicAnimation学习Demo 包括了一些常用的动画效果(二)
2015-07-24 05:57:55 来源: 作者: 【 】 浏览:15
Tags:CABasicAnimation 学习 Demo 包括 一些 常用 动画 效果
Value valueWithCGPoint:toPoint]; //旋转动画 CABasicAnimation* rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];//"z"还可以是“x”“y”,表示沿z轴旋转 rotationAnimation.toValue = [NSNumber numberWithFloat:(2 * M_PI) * 3]; // 3 is the number of 360 degree rotations // Make the rotation animation duration slightly less than the other animations to give it the feel // that it pauses at its largest scale value rotationAnimation.duration = 3.0f; rotationAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; //缓入缓出 //rotationAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear]; //缩放动画 CABasicAnimation *scaleAnimation = [CABasicAnimation animationWithKeyPath:@"transform.scale"]; scaleAnimation.fromValue = [NSNumber numberWithFloat:0.0]; scaleAnimation.toValue = [NSNumber numberWithFloat:1.0]; scaleAnimation.duration = 3.0f; scaleAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; //组合动画 CAAnimationGroup *animationGroup = [CAAnimationGroup animation]; animationGroup.duration = 3.0f; animationGroup.autoreverses = YES; //是否重播,原动画的倒播 animationGroup.repeatCount = NSNotFound;//HUGE_VALF; //HUGE_VALF,源自math.h [animationGroup setAnimations:[NSArray arrayWithObjects:rotationAnimation, scaleAnimation,boundsAnimation, nil]]; //将上述两个动画编组 [self.ViewTest.layer addAnimation:animationGroup forKey:@"animationGroup"]; } //永久闪烁的动画 -(void)opacityForever_Animation:(float)time { CABasicAnimation *animation=[CABasicAnimation animationWithKeyPath:@"opacity"]; animation.fromValue=[NSNumber numberWithFloat:1.0]; animation.toValue=[NSNumber numberWithFloat:0.0]; animation.autoreverses=YES; animation.duration=time; animation.repeatCount=FLT_MAX; animation.removedOnCompletion=NO; animation.fillMode=kCAFillModeForwards; [self.ViewTest.layer addAnimation:animation forKey:@"opacityForever"]; } /**************************************************************************/ //有闪烁次数的动画 -(void)opacityTimes_Animation:(float)repeatTimes durTimes:(float)time; { CABasicAnimation *animation=[CABasicAnimation animationWithKeyPath:@"opacity"]; animation.fromValue=[NSNumber numberWithFloat:1.0]; animation.toValue=[NSNumber numberWithFloat:0.4]; animation.repeatCount=repeatTimes; animation.duration=time; animation.removedOnCompletion=NO; animation.fillMode=kCAFillModeForwards; animation.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn]; animation.autoreverses=YES; [self.ViewTest.layer addAnimation:animation forKey:@"opacityTimes"]; } /**************************************************************************/ //路径动画 -(void)keyframeAniamtion:(CGMutablePathRef)path durTimes:(float)time Rep:(float)repeatTimes { } //在视图中画一条线 -(void)drawACurvedLine { UIGraphicsBeginImageContext(CGSizeMake(320, 460)); CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetLineWidth(context, 3); CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor); //设置起点 CGContextMoveToPoint(context, 10, 10);
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++11 新特性之 变长参数模板 下一篇ajax――XMLHttpRequest

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: