【发布时间】:2010-12-01 18:05:34
【问题描述】:
我在应用的 keyWindow 上做了一个动画。
[UIView beginAnimations:kAnimationLogin context:nil];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:window_ cache:NO];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:1.0];
[window_ addSubview:splitViewController_.view];
[UIView commitAnimations];
[loginViewController_.view removeFromSuperview];
这工作正常。然后,如果用户注销,则转换是相反的
[UIView beginAnimations:kAnimationLogout context:nil];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:window_ cache:NO];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:1.0];
[window_ addSubview:loginViewController_.view];
[UIView commitAnimations];
[splitViewController_.view removeFromSuperview];
这就是问题所在。现在, loginViewController_ 和 splitViewController_ 不会收到方向通知。为什么?
【问题讨论】:
-
你的意思是他们在动画之后没有收到方向变化通知。如果不执行动画,他们会收到吗?
-
是的,techZen,这就是重点,如果我不进行转换,则不会出现方向问题,但如果我这样做,问题就会开始。
标签: ipad uiview transitions