注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

融智技术学院

融智技术学院163分站,为广大好友提供更多的帮助

 
 
 

日志

 
 

【iPhone每日一问】根视图控制器的动画过渡,初始方向是错误的  

2014-03-27 13:14:42|  分类: iPhone |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

问:

正如以下的这个文章:根视图切换时的过渡动画通过window.rootViewControllerAB再到C。代码如下:

  • [UIView transitionWithView:self.window
  •                   duration:0.5
  •                    options: UIViewAnimationOptionTransitionFlipFromLeft
  •                 animations:^{
  •                                self.window.rootViewController = newViewController;
  •                 }
  •                 completion:nil];

问题是我的应用程序只支持水平方向,但RootViewController的过渡期间,新的视图控制器出现在垂直模式下比横向模式旋转的更快速。

我确定:

1.       我设置了UISupportedOrientation为水平模式(home键在右边)

2.       对于每一个视图控制器,在shouldAutoRotateToOrientation方法中,我只设置了一个水平模式。

可能是什么原因呢?

答:

在刚才我调查了这个,因为我一直得到了同样的问题。我随机尝试了以下代码,并且它完美工作了:

  • [UIView
  •     transitionWithView:window
  •     duration:0.5
  •     options:UIViewAnimationOptionTransitionCrossDissolve
  •     animations:^(void) {
  •         BOOL oldState = [UIView areAnimationsEnabled];
  •         [UIView setAnimationsEnabled:NO];
  •         [(ICApp *)sharedApplication.delegate window].rootViewController = self;
  •         [UIView setAnimationsEnabled:oldState];
  •     }
  •     completion:nil];

我知道它有一点奇怪,在动画块内禁用/启动动画,但交叉解除动画,并且不旋转——该视图控制器已经出现旋转和准备滚动。

温馨提示:您的支持与理解,是我们工作最大的动力。如果您是从网上购买的图书,请在对应的网店,给予本书一个好评,我们将衷心感谢!!!
以下是《突破,Objective—C开发速学手册》对应的购书评论地址:
当当网http://product.dangdang.com/23301950.html
亚马逊http://www.amazon.cn/dp/B00DY89JIY
京东网http://item.jd.com/11280184.html

  评论这张
 
阅读(6)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017