【发布时间】:2011-06-11 11:45:17
【问题描述】:
我有一个视图控制器控制器来控制两个视图的翻转。这类似于 iPhone 中的电话应用程序,其中当您拨打电话并点击键盘项目时,视图会翻转。
现在,当我尝试翻转某些选择的视图时,它会正确翻转以显示我的第二个视图,但在第二次翻转以显示我的第一个屏幕时,翻转不流畅,我可以看到我的第一个视图翻转,停留第二个,然后第二个视图消失,然后第一个视图出现。每次都会发生这种情况。
以下是我在点击第一个视图以翻转到第二个视图时正在执行的代码:
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.75];
[UIView setAnimationTransition:([self.mainView superview] ?
UIViewAnimationTransitionFlipFromLeft : UIViewAnimationTransitionFlipFromRight)
forView:self.containerView cache:YES];
[self.mainView removeFromSuperview];
[self loadRequestView];
[UIView commitAnimations];
下面是我在点击第二个视图翻转到第一个视图时执行的代码:
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.75];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight
forView:self.containerView cache:YES];
[self.mainView removeFromSuperview];
[self loadLandingView];
[UIView commitAnimations];
loadRequestView 和 loadLandingView 都将我的 self.mainView 设置为适当的视图。
有什么线索吗?
【问题讨论】:
标签: iphone cocoa-touch uiview uiviewcontroller