- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
_showImg = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 200, 100)];
_showImg.layer.borderWidth = 1;
_showImg.image = [UIImage imageNamed:@"aroundFailure"];
_showImg.contentMode = UIViewContentModeScaleAspectFit;
[self.view addSubview:self.showImg];
}
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
[UIView animateWithDuration:1.0 animations:^{
CGRect rect = CGRectMake(150, [[UIScreen mainScreen] bounds].size.height - 200, 100, 100);
self.showImg.frame = rect;
CABasicAnimation *anima = [CABasicAnimation animationWithKeyPath:@"transform.scale"];//同上
anima.toValue = [NSNumber numberWithFloat:0.5f];
anima.removedOnCompletion = NO;
anima.duration = 1.0f;
anima.fillMode = kCAFillModeForwards;
[self.showImg.layer addAnimation:anima forKey:@"scaleAnimation"];
}];
}
基本动画CABasicAnimation - 完成之后闪回初始状
来源:华拓网