0

我有一个名为 pagingView 的 UIScrollView 的子类。我想为它设置动画,以便在设备旋转时(它仅针对此视图控制器,因此在 plist 中关闭了横向模式)。

我已经更改了所有的 clipsToBounds 属性和 contentResize 属性以及自动调整掩码,但似乎都没有工作。我正在使用的代码如下:

UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
if (orientation == UIInterfaceOrientationLandscapeLeft)
{

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];  
 graph.frame = CGRectMake(pagingView.frame.origin.x, pagingView.frame.origin.y-200, pagingView.frame.size.width*1.5, pagingView.frame.size.height*2);
[UIView commitAnimations];

}

我已经将它们更改为块,更改了所有属性,但是,当我运行代码时,它所做的只是将 pagingView 在屏幕上移动 200 像素并且边界不会改变(我也尝试过改变边界财产)。任何帮助将不胜感激,我希望这只是我缺少的一件简单的事情,但我花了几个小时寻找解决方案,而我得到的最接近的潜在答案可能与 layer 属性有关?

提前致谢!

4

1 回答 1

1

我最近遇到了类似的问题,滚动视图边界在设备旋转后没有改变。我最终找到的解决方案是在情节提要中为滚动视图的所有四个边添加约束。我在模拟器模式下使用自动布局、iOS7 和 XCode5。如果没有限制,滚动视图将在 iPhone 3.5" 模拟器中保留例如 (320,480) 固定大小。当我努力诊断时非常沮丧。

于 2013-11-07T19:38:45.890 回答