Iphone 预缓存UIView';什么是动画?

Iphone 预缓存UIView';什么是动画?,iphone,uiviewanimation,performance,Iphone,Uiviewanimation,Performance,我已经设置了一个UIViewController,其中包含两个其他控制器: MainVC -> SubVC1 -> SubVC2 首先,我显示SubVC1的视图。然后,用户可以切换到SubVC2的视图: - (void)showOtherSide:(id)sender { UIView *currentView = [self.view.subviews objectAtIndex:0]; BOOL flipToRight; UIView *newV

我已经设置了一个UIViewController,其中包含两个其他控制器:

MainVC -> SubVC1
       -> SubVC2
首先,我显示SubVC1的视图。然后,用户可以切换到SubVC2的视图:

- (void)showOtherSide:(id)sender
{
   UIView *currentView = [self.view.subviews objectAtIndex:0];
   BOOL flipToRight;
   UIView *newView;
   if (currentView == subVC1.view)
   {
       newView = subVC2.view;
       flipToRight = YES;
   }
   else
   {
       newView = subVC1.view;
       flipToRight = NO;
   }

   [UIView beginAnimations:nil context:nil];
   [UIView setAnimationDuration:1.0];
   [UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
   if (flipToRight)
   {
       [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:currentView cache:YES];
   }
   else
   {
       [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:currentView cache:YES];
   }

   [currentView removeFromSuperview];
   [self.view addSubview:newView];
   [UIView commitAnimations];
}
现在的问题是,即使在模拟器中,第一次来回翻转也不会出现,相反,用户会立即看到新的视图。因为我将动画缓存设置为“是”,所以下面的翻转显示动画(至少在大多数情况下!)。 我也尝试将动画代码放在viewdide:方法中,但没有任何改进


有什么好的做法可以预缓存动画吗?

我得到的是,当视图加载时,您希望在延迟后执行动画吗?是吗?@rishi:用户可以点击一个按钮。然后两个视图应该交换,通过翻转动画可视化。