Ios 设置视图之间切换的过渡动画
我目前正在阅读一本ios6编程初学者指南。直到刚才我尝试在两个视图之间来回切换动画时,一切都很好。这个练习的最终目标是让每个视图看起来像是在另一个视图的背面(就像硬币/纸的两面) 然而,当我使用书中给出的代码时,只有一个动画被激活,但书中说代码应该对这两个都有效 我已经检查了我的代码多次,以确保我做得正确,但我无法区分我的代码和书中的代码之间的差异。我知道我正在做(或者更可能不做)的事情很简单,但我只是没有找到它的经验 任何帮助都将不胜感激 代码:Ios 设置视图之间切换的过渡动画,ios,animation,view,Ios,Animation,View,我目前正在阅读一本ios6编程初学者指南。直到刚才我尝试在两个视图之间来回切换动画时,一切都很好。这个练习的最终目标是让每个视图看起来像是在另一个视图的背面(就像硬币/纸的两面) 然而,当我使用书中给出的代码时,只有一个动画被激活,但书中说代码应该对这两个都有效 我已经检查了我的代码多次,以确保我做得正确,但我无法区分我的代码和书中的代码之间的差异。我知道我正在做(或者更可能不做)的事情很简单,但我只是没有找到它的经验 任何帮助都将不胜感激 代码: 这是因为你使用了UIViewAnimation
这是因为你使用了
UIViewAnimationOptionTransitionFlipFromRight
而不是UIViewAnimationTransitionFlipFromRight
,我觉得自己像个白痴,在发布前一个小时一直在想办法。非常感谢。
- (IBAction)switchViews:(id)sender
{
[UIView beginAnimations:@"View Flip" context:nil];
[UIView setAnimationDuration:1.25];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
if (self.yellowViewController.view.superview == nil) {
if (self.yellowViewController == nil) {
self.yellowViewController = [[BIDYellowViewController alloc] initWithNibName:@"YellowView" bundle:nil];
}
// This one doesn't work
[UIView setAnimationTransition:UIViewAnimationOptionTransitionFlipFromRight forView:self.view cache:YES];
[self.blueViewController.view removeFromSuperview];
[self.view insertSubview:self.yellowViewController.view atIndex:0];
}
else
{
if (self.blueViewController == nil) {
self.blueViewController = [[BIDBlueViewController alloc] initWithNibName:@"BlueView" bundle:nil];
}
// This one works
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES];
[self.yellowViewController.view removeFromSuperview];
[self.view insertSubview:self.blueViewController.view atIndex:0];
}
[UIView commitAnimations];
}