1

我使用 Interface Builder 创建了一个通用应用程序。我的视图控制器嵌入在导航控制器中。一切都可以在模拟器以及 iPad 和 iPhone 上运行,但我有一个奇怪的怪癖。

我的第一个视图是在 ScrollView 中显示的菜单。仅在 iPhone 和 iPhone 模拟器上,第一次加载我的第一个视图时,一切看起来都很好。如果我单击一个按钮以转到一个新视图,然后使用“返回”按钮,则菜单会向屏幕左侧缩小。如果我再次单击一个按钮,然后再次导航,则会恢复原始比例。(无限重复。)

这似乎在 iPad 版本中不会发生。唯一的区别是:iPhone版是纵向的,iPad版是横向的;并且 iPad 版本在滚动视图中(从 iPhone UI 复制过来),但实际上不需要滚动,因为视图与屏幕大小相同。

我正在使用 Interface Builder 来设置支柱和弹簧。我尝试升级到 AutoLayout,但这导致从一些(非常旧的)Apple 示例代码中提取的 OpenGL 组件出现问题,我不想弄乱该组件。

这可能是 ScrollViews 和导航控制器的错误吗?我只是错过了一个简单的设置更改吗?我怀疑这可能与 iOS 6 试图支持新的、更长的 iPhone 有关,但不知道如何修复它。我确定问题很愚蠢,但我被卡住了!提前致谢。

4

1 回答 1

0

弄清楚了。我只好搬家

self.scrollView.contentSize = self.scrollView.bounds.size;

出 viewDidLoad 并进入 ViewWillAppear。

于 2012-10-21T01:53:46.637 回答