UIScrollView高度和宽度

时间:2015-11-17 19:31:42

标签: ios objective-c xcode uiscrollview

我面临一个奇怪的问题,使用下面的代码我将UIScrollView全屏显示。

CGRect screenBound = [[UIScreen mainScreen] bounds];
CGSize screenSize = screenBound.size;
CGFloat screenWidth = screenSize.width;
CGFloat screenHeight = screenSize.height;
CGRect scrollFrame = CGRectMake(0, 0, screenWidth, screenHeight);
self.imageHostScrollView.frame = scrollFrame;
NSLog(@"Scroll Height: %f, Width: %f",screenHeight,screenWidth);

当iPad处于人像模式时,我面临的问题是,高度会很大,宽度会很小,相反,我的高度越来越小,宽度也越来越大(在横向模式下也是如此)。

肖像模式我得到的值是

滚动高度:768.000000,宽度:1024.000000

在横向模式中,我得到的值是

滚动高度:1024.000000,宽度768.000000

任何人都可以帮助我

1 个答案:

答案 0 :(得分:1)

问题在于您设置self.imageHostScrollView.frame的方式很愚蠢。您实际上是将关于屏幕的假设硬编码到视图的框架中 - 两件完全无关的事情。

而是使用自动布局将滚动视图的边缘固定到窗口的边缘。这样,无论窗口从现在开始做什么 - 不做任何假设 - 滚动视图将继续完全填充它。