Iphone 打开帘幕:带核心动画的动画

Iphone 打开帘幕:带核心动画的动画,iphone,cocoa-touch,animation,core-animation,Iphone,Cocoa Touch,Animation,Core Animation,我想制作一个打开的窗帘的动画。我有两张图片:一张在窗帘的左侧,另一张在窗帘的右侧(用红色表示)。我想用核心动画平滑地滑动它们。我应该寻找哪种动画类型?如何实现真实的滑动样式 问候, 斯特凡 最简单的解决方案是必须使用imageview或CGLayers,然后在动画块中使用CGAffineTransformTranslate将它们滑出屏幕 我不知道人们为什么建议使用翻译。如果您只需滑动图像,只需在动画块内的每个图像视图上调用-setCenter即可。像这样: [UIView beginAnimat

我想制作一个打开的窗帘的动画。我有两张图片:一张在窗帘的左侧,另一张在窗帘的右侧(用红色表示)。我想用核心动画平滑地滑动它们。我应该寻找哪种动画类型?如何实现真实的滑动样式

问候,

斯特凡


最简单的解决方案是必须使用imageview或CGLayers,然后在动画块中使用CGAffineTransformTranslate将它们滑出屏幕

我不知道人们为什么建议使用翻译。如果您只需滑动图像,只需在动画块内的每个图像视图上调用-setCenter即可。像这样:

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
[leftCurtainImageView setCenter:pointOffScreenLeft];
[rightCurtainImageView setCenter:pointOffScreenRight];
[UIView commitAnimations];
其中,pointOffScreenLeft和pointOffScreenRight的计算如下:

CGPoint pointOffScreenLeft = CGPointMake(
                 -[leftCurtainImageView bounds].size.width, 
                 [leftCurtainImageView frame].origin.y);

CGPoint pointOffScreenRight = CGPointMake(
                 [rightCurtainImageView frame].origin.x + 
                 [rightCurtainImageView bounds].size.width, 
                 [leftCurtainImageView frame].origin.y);
这些计算假设窗帘分别位于其包含视图的最左边缘和最右边缘。

Man

经过长时间的搜索。我能找到的唯一办法就是这个