XCode/Objective-C:UIView实例的同步动画?

XCode/Objective-C:UIView实例的同步动画?,objective-c,xcode,animation,uiview,Objective C,Xcode,Animation,Uiview,我有两个IBOutlet变量连接到Interface Builder中的UIView的两个实例,在我的ViewController中称为blankView和fadedBGView 如何设置此代码,使blankView实例使用uiviewmanimationoptiontransitioncrossdissolve转换淡入fadedBGView,两个uiview可以同时从当前位置(位置相等)转换(移动)到0,0 发生的是淡入淡出,然后fadedBGView视图突然移动到0,0 换句话说,我想让第一

我有两个
IBOutlet
变量连接到Interface Builder中的
UIView
的两个实例,在我的
ViewController
中称为
blankView
fadedBGView

如何设置此代码,使
blankView
实例使用
uiviewmanimationoptiontransitioncrossdissolve
转换淡入
fadedBGView
,两个
uiview
可以同时从当前位置(位置相等)转换(移动)到0,0

发生的是淡入淡出,然后
fadedBGView
视图突然移动到0,0

换句话说,我想让第一个
UIView
淡入第二个,同时向上移动屏幕

希望这足够清楚地回答这个问题。 最佳…SL

[UIView transitionFromView:blankView
                    toView:fadedBGView
                    duration:1.0
                    options:UIViewAnimationOptionTransitionCrossDissolve
                    completion:^(BOOL finished) {
                    [blankView removeFromSuperview];
                    }];

[UIView commitAnimations];

CGRect frame = fadedBGView.frame;
frame.origin.x = 0;
frame.origin.y = 0;
[UIView animateWithDuration:1.0 animations:^{
    NSLog(@"UIView Transition/Move Called");
    fadedBGView.frame = frame;
}];

iOS 4及更新版本提供基于块的动画,您的代码已经在使用这些动画:

+[UIView animateWithDuration:animations:];
+[UIView animateWithDuration:animations:completion:];
在动画块中,可以设置多个目标值。有关可设置动画的属性的参考,请参见。因此,在一个块中,可以修改帧和视图的alpha(透明度)值。我不确定交叉融合动画是如何工作的,但如果它只是一个从0到1的视图,另一个从1到0的视图,那么这很容易实现。

而不是

UIViewAnimationOptionTransitionCrossDissolve
使用


UIViewAnimationOptionAllowAnimatedContent
选项允许在转换期间进行其他动画。确保您的
fadedBGView
具有正确的起始帧

你需要支持哪些版本的iOS?我还没有真正考虑过……iOS4及以上版本怎么样?只是一个猜测,不管你推荐什么我想..谢谢巴德,在一个街区内改变了alpha值。消除了对UIView第一个实例的需要。非常感谢你。
UIViewAnimationOptionTransitionCrossDissolve | UIViewAnimationOptionAllowAnimatedContent