ios4 – UIView过渡动画不适用于transitionWithView:duration:options:animations:completion方法

在iOS文档中,不鼓励使用beginAnimation-commitAnimation.因此,对于动画和过渡,有一些新方法可以使用^块.但是,当我使用transitionWithView:duration:options:animations:completion方法我没有过渡效果.所以如果我写:
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp 
                       forView:self.view cache:YES];

firstView.hidden = YES;
secondView.hidden = NO;
[UIView commitAnimations];

它的工作原理,但如果我这样做的话

[UIView transitionWithView:self.view duration:1.0 options 
      UIViewAnimationCurveEaseIn|UIViewAnimationTransitionCurlUp
        animations:^{
          firstView.hidden = YES;
          secondView.hidden = NO;
         } completion:NULL
         ];

我没有任何过渡效果.我错过了什么?

解决方法

好的,我已经找到了每个人都需要注意的微妙细节,以便使用iOS 4及更高版本中可用的方法来处理动画和过渡.当为方法指定动画/过渡选项时,我们必须使用常量其中的“选项”一词.所以不要写作
UIViewAnimationCurveEaseIn|UIViewAnimationTransitionCurlUp

我们应该写

UIViewAnimationoptionCurveEaseIn|UIViewAnimationoptionTransitionCurlUp

在确定转换工作正常后

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...