ios 中心放大动画

来源:互联网 发布:linux临时设置环境变量 编辑:程序博客网 时间:2024/04/19 05:40
-(void)animationOfCABasicAnimation{    UIView *redView=[[UIView alloc]initWithFrame:CGRectMake(10, 10, 100, 100)];    redView.backgroundColor=[UIColor redColor];    [self.view addSubview:redView];    //创建一个CABasicAnimation对象    CABasicAnimation *animation=[CABasicAnimation animationWithKeyPath:@"transform.scale"];    redView.layer.anchorPoint = CGPointMake(.5,.5);    animation.fromValue = @0.0f;    animation.toValue = @1.0f;    //动画时间    animation.duration=1;    //是否反转变为原来的属性值   // animation.autoreverses=YES;    //把animation添加到图层的layer中,便可以播放动画了。forKey指定要应用此动画的属性    [redView.layer addAnimation:animation forKey:@"scale"];}

组合动画和时间轴:

-(void) combineAnimation{    UIView *redView=[[UIView alloc]initWithFrame:CGRectMake(10, 10, 100, 100)];    redView.backgroundColor=[UIColor redColor];    [self.view addSubview:redView];    //创建一个CABasicAnimation对象    CABasicAnimation *animation=[CABasicAnimation animationWithKeyPath:@"transform.scale"];    redView.layer.anchorPoint = CGPointMake(.5,.5);   // animation.fromValue = @2.0f;    animation.toValue = @0.5f;    //动画时间    animation.duration=1;    animation.beginTime=CACurrentMediaTime()+1;    //是否反转变为原来的属性值    // animation.autoreverses=YES;    //把animation添加到图层的layer中,便可以播放动画了。forKey指定要应用此动画的属性    [redView.layer addAnimation:animation forKey:@"scale"];    CABasicAnimation *theAnimation;    // create the animation object, specifying the position property as the key path    // the key path is relative to the target animation object (in this case a CALayer)    theAnimation=[CABasicAnimation animationWithKeyPath:@"position"];    // set the fromValue and toValue to the appropriate points    theAnimation.fromValue=[NSValue valueWithCGPoint:CGPointMake(74.0,74.0)];    theAnimation.toValue=[NSValue valueWithCGPoint:CGPointMake(300.0,406.0)];    // set the duration to 3.0 seconds    theAnimation.duration=3.0;    // set a custom timing function    theAnimation.timingFunction=[CAMediaTimingFunction functionWithControlPoints:0.25f :0.1f :0.25f :1.0f];    [redView.layer addAnimation:theAnimation forKey:@"move"];}
0 0