【iOS开发-动画】CABasicAnimation实现动画

平移动画

//创建对象
CABasicAnimation *anim = [CABasicAnimation animation];
// keyPath决定了执行怎样的动画, 调整哪个属性来执行动画    
anim.keyPath = @"position";

// toValue : 最终变成什么值
// byValue : 增加多少值    
anim.byValue = [NSValue valueWithCGPoint:CGPointMake(100, 100)];
anim.duration = 1.5;//执行动画的时间

动画执行完,图层又会回到原来的地方,下面两句话是不让图层回到原来的地方    
anim.removedOnCompletion = NO;
anim.fillMode = kCAFillModeForwards;

[self.layer addAnimation:anim forKey:nil];//把动画添加到图层上面 后面的forKey是移除动画的时候使用

缩放动画

CABasicAnimation *anim = [CABasicAnimation animation];

anim.keyPath = @"bounds";

anim.byValue = [NSValue valueWithCGRect:CGRectMake(0, 0, 100, 100)];
anim.duration = 1.5;

anim.removedOnCompletion = NO;
anim.fillMode = kCAFillModeForwards;

[self.layer addAnimation:anim forKey:nil];

旋转动画

CABasicAnimation *anim = [CABasicAnimation animation];

anim.keyPath = @"transform";

anim.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI_2, 1, -1, 0)];
anim.duration = 1.5;

anim.removedOnCompletion = NO;
anim.fillMode = kCAFillModeForwards;

[self.layer addAnimation:anim forKey:nil];

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。