在调用transitionWithView之前设置上一个图像

时间:2013-02-28 19:51:14

标签: ios animation uiview

我有一个占位符UIImageView(从.xib加载),我想用卡背面的图片加载,然后翻到前面的图像。

[cardView setImage:backCardImage];
[UIView transitionWithView:cardView 
                  duration:1        
                   options:UIViewAnimationOptionTransitionFlipFromLeft
                animations:^{         
                    [cardView setImage:frontCardImage];
                }
                completion:NULL];

问题是它开始的初始图像不是backCardImage,而是使用我的.xib文件中的无图像(即空白图像)。如果我在.xib中加载了backCardImage并且只调用transitionWithView,我相信它会正常工作,但我真的希望有两个调用(setImagetransitionWithView)用同样的方法。有没有办法做到这一点?我需要在两者之间打电话吗?

我尝试使用UIViewAnimationOptionBeginFromCurrentState,但这也不起作用。

1 个答案:

答案 0 :(得分:2)

即使你放入setNeedsDisplay,cardView也不会绘制,直到下一个绘图周期,所以你需要先在另一个方法中设置该图像,或者将动画移动到另一个方法,然后用performSelector调用它:withObject :afterDelay :.即使延迟0也会奏效。我不认为动画看起来很好,因为你只能在翻转之前看到背面图像(延迟.1或.2秒看起来更好)。为什么不早点设置背面图像?在这种情况下占位符图像的目的是什么?