首先感谢您阅读我的问题。我目前正在尝试使用 CFaffineTransform 执行多个动画来复制 kens burn 效果。
尝试实现:缩放到图像,然后将图像平移到右侧。
问题:一旦我开始第二个动画,我的图像将相对于原始图像进行平移,而不是相对于第一个图像的最终产品进行平移。这不是我想要达到的效果。
第一个动画是放大图像。
[UIView beginAnimations:@"zoomin" context:NULL];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:5];
CGAffineTransform zoomIn = CGAffineTransformMakeScale(5.8, 5.8);
imageView.transform = zoomIn;
[UIView commitAnimations];
第二个动画是将图像向左平移。
[UIView beginAnimations:@"panning" context:NULL];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:5];
CGAffineTransform moveRight = CGAffineTransformMakeTranslation(200, 0);
imageView.transform = moveRight;
[UIView commitAnimations];
仅在第一个动画结束后调用第二个动画代码。