ios - UIScrollView 高度和宽度

标签 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

谁能帮帮我

最佳答案

问题是您设置 self.imageHostScrollView.frame 的方式很愚蠢。您实际上是将关于屏幕 的假设硬编码到 View 的框架中——这两件事彼此完全无关。

相反,使用自动布局将 ScrollView 的边缘固定到窗口的边缘。这样,无论窗口从现在开始做什么——不假设它可能是什么—— ScrollView 将继续准确地填充它。

关于ios - UIScrollView 高度和宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33765467/

相关文章:

iphone - 释放还是自动释放?

ios - 为什么我的 View 不显示在 Storyboard 中并且在左 Pane 中呈灰色?

ios - 本地址栏中只有前缀时,使 iphone webview 转到不同的网址

ios - 如何为 iOS 构建 OpenCV 2.4.9?

ios - 如何在 Interface Builder 中使用 RMMapView?

ios - 未观察到 KVC NSKeyValueChangeRemoval

objective-c - 如何在 mac osx 中为文件类型设置自定义图标

ios - 代码设计错误 : Provisioning profile cannot be found after deleting expired profile

javascript - iPad JavaScript 错误没有帮助

ios - 修复 ARC 中潜在的内存泄漏