0

我试图在一个页面上放置一个 UIScroll 视图,该页面填充页面减去边缘周围的 10px 边距。这是我做过的。但是,我还希望 UIScrollView 在设备旋转时调整大小,保持 10px 边距。到目前为止,我的代码是:

// Get the screen dimensions, considering the status bar
scrollWidth = self.getScreenSize.width   // evaluates to 1004 in landscape & 748 in portrait
scrollHeight = self.getScreenSize.height // evaluates to 728 in landscape & 984 in portrait

scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(10,10,scrollWidth,scrollHeight)];
[scrollView setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight];

... other stuff to load scrollview content ...

[self.view addSubview:scrollView];

当我启动应用程序时,scrollView 比页面宽,无论我在哪个方向启动它。删除 [scrollView setAutoresizingMask..... 行使 scrollView 完美契合,但不会对设备旋转做出反应。

我究竟做错了什么?

4

2 回答 2

0

用于shouldAutorotateToInterfaceOrientation检测屏幕何时要旋转,然后更改滚动视图的框架:

CGRect frame = scrollView.frame
//Change frame
scrollView.frame = frame;
于 2013-05-02T13:53:24.173 回答
0

如果您的目标是 6.0 或更高版本,请使用 AutoLayout / Constraints。比处理框架、边界和中心要容易得多。

于 2013-05-02T14:08:41.863 回答