2013-03-23 33 views
1

我想,当用户点击一个按钮,我的主视图控制器视图向右滑动。我使用此代码:的UIView动画不考虑定向

[UIView animateWithDuration:1 
          delay:0 
         options:UIViewAnimationOptionBeginFromCurrentState 
        animations:^(void){ self.view.left = 300; } 
        completion:nil]; 

结果是view.frame.origin.x没有考虑到设备方向。如果屏幕左侧为横向,则设置x = 300不会将视图向右移动,它将向下移动。我可以做一个大的switch语句来根据方向改变相关的参数,但是我觉得我之前完成了这个操作,而不必诉诸于这样的诡计。我错过了明显的东西吗?

我试着不带选项,没有什么区别。

我使用UIView的一个类别,这样我就不必明确键入出整个CGRectMake。如果我使用完整的CGRectMake语句完成,结果是一样的。

回答

0

我有同样的问题。动画视图的边界而不是视图的框架(我假设这是该类别正在做的)为我工作。