iOS 动画 UIView CoreAnimation 回到初始状态
2017-05-25 11:32
645 查看
今天开发遇到一个缩放的动画,总结了两种常用的方式
UIView animation-duration-completion 方法和CoreAnimation
UIView代码:
[UIView
animateWithDuration:10.0
animations:^{
_iconImgView.center =
_iconImgView.center;
CGPoint imagePoint =
_iconImgView.frame.origin;
CGSize imageSize =
_iconImgView.frame.size;
_iconImgView.frame =
CGRectMake(imagePoint.x, imagePoint.y, imageSize.width *
2, imageSize.height *
2);
}];
原点不变的放大到2倍
感觉功能强,可以做任何动画但很烦琐
CoreAnimation代码:
CABasicAnimation * animation = [CABasicAnimation
animationWithKeyPath:@"transform.scale"];
//动画初始位置
animation.fromValue =
@1;
//动画结束位置
animation.toValue =
@2;
//设置动画持续时间
animation.duration =
1.0;
[_iconImgView.layer
addAnimation:animation forKey:nil];
imageview 中心不变放大2倍
但是CoreAnimation 动画最后又回到原来的大小了
最后添加代码:
// 动画终了后不返回初始状态
animation.removedOnCompletion = NO;
animation.fillMode = kCAFillModeForwards;
解决问题!
UIView animation-duration-completion 方法和CoreAnimation
UIView代码:
[UIView
animateWithDuration:10.0
animations:^{
_iconImgView.center =
_iconImgView.center;
CGPoint imagePoint =
_iconImgView.frame.origin;
CGSize imageSize =
_iconImgView.frame.size;
_iconImgView.frame =
CGRectMake(imagePoint.x, imagePoint.y, imageSize.width *
2, imageSize.height *
2);
}];
原点不变的放大到2倍
感觉功能强,可以做任何动画但很烦琐
CoreAnimation代码:
CABasicAnimation * animation = [CABasicAnimation
animationWithKeyPath:@"transform.scale"];
//动画初始位置
animation.fromValue =
@1;
//动画结束位置
animation.toValue =
@2;
//设置动画持续时间
animation.duration =
1.0;
[_iconImgView.layer
addAnimation:animation forKey:nil];
imageview 中心不变放大2倍
但是CoreAnimation 动画最后又回到原来的大小了
最后添加代码:
// 动画终了后不返回初始状态
animation.removedOnCompletion = NO;
animation.fillMode = kCAFillModeForwards;
解决问题!
相关文章推荐
- iOS开发-CALayer/Core Animation/UIView动画封装
- iOS CoreAnimation专题——原理篇(二) UIView block动画实现原理
- CABasicAnimation CAAnimationGroup等动画结束后避免回到初始状态的设置方法
- [ios]Core Animation之多种动画效果 【转】
- iOS 动画Animation详解, UIView动画(UIView属性动画,UIViewTransition动画,UIView Block动画),CALayer动画(CABasicAnima...)
- ios-day18-11(使用CAAnimationGroup实现对UIView的组合动画)
- iOS 动画Animation详解, UIView动画,CALayer动画
- iOS UIView动画实践(一):揭开Animation的神秘面纱
- iOS小效果(3)按钮控制图片回到初始状态
- 【原】iOSCoreAnimation动画系列教程(二):CAKeyFrameAnimation【包会】
- iOS开发 - UIView动画扩展块(UIViewAnimationWithBlocks)
- iOS Core Animation Advanced Techniques(六): 基于定时器的动画和性能调优
- iOS高级-QuartzCore框架-CoreAnimation和UIView动画的使用
- iOS 之core Animation中的多种动画效果
- iOS动画:UIView动画和CALayer动画(CABasicAnimation、CAKeyframeAnimation的使用)
- ios 动画CoreAnimation中遇到的问题
- iOS-Core-Animation之七----隐式动画
- iOS-Core-Animation之八----显式动画
- iOS 动画Animation详解, UIView动画(UIView属性动画,UIViewTransition动画,UIView Block动画),CALayer动画(CABasicAnima...)
- iOS 动画Animation详解, UIView动画(UIView属性动画,UIViewTransition动画,UIView Block动画),CALayer动画(CABasicAnima...)