【问题标题】:iOS ScrollView in Navigation Controller causes layout issue on reload导航控制器中的 iOS ScrollView 导致重新加载时出现布局问题
【发布时间】:2012-10-21 00:32:34
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: ios layout uinavigationcontroller scrollview


    【解决方案1】:

    想通了。我只好搬家了

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

    离开 viewDidLoad 并进入 ViewWillAppear。

    【讨论】:

      猜你喜欢
      • 2017-09-07
      • 1970-01-01
      • 2023-03-12
      • 2012-10-08
      • 1970-01-01
      • 1970-01-01
      • 2022-06-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多