【问题标题】:iphone 5 and storyboard setting autoresizing masksiphone 5 和情节提要设置自动调整蒙版
【发布时间】:2012-10-08 00:31:06
【问题描述】:

我有一个故事板驱动的应用程序,我正在尝试修改它以支持 iPhone 5。

有一个导航控制器,然后是我的menuViewController。在菜单控制器的viewDidLoad 中,我已经验证了self.view.frame 是{{0, 0}, {320, 568}}。视图控制器的大小在 Simulated Metrics 中设置为“Inferred”,并且主视图已选中“Autoresize Subviews”。

但我的子视图没有调整大小! (请注意,我可以在代码中手动调整它们的大小,这不是问题,但我真的希望它主要使用 IB 来“工作”,因为我有很多视图,这会容易一百万倍。)

我有一个未调整大小的全屏子视图。它的面具基本上已经启用了一切。

我也有应该浮动在底部或顶部的子视图,浮动在顶部的子视图可以工作,但应该浮动在底部的子视图不会。

我应该在这里检查什么?我可能错过了一些愚蠢的事情,但我已经摸索了一个小时,并且接近于更改代码中的所有帧。 (这样既丑又不雅。)

谢谢!

【问题讨论】:

  • "但是我的子视图没有调整大小!" : 你的意思是?旋转设备时?还是在 iPhone 4 和 5 之间?
  • 在 iPhone 4 和 iPhone 5 之间。
  • 我也尝试在self.view 上调用layoutSubviews viewDidLoad,没有。

标签: iphone ios cocoa-touch storyboard autoresize


【解决方案1】:

在指标窗格中检查您的视图(不是视图控制器)的自动调整大小控件中的弹簧。试着让它们像下图一样。

请注意,您将无法为顶级视图对象设置内部弹簧(但这很好:只需确保 4 个侧刻度都已激活)。

希望这会有所帮助。

【讨论】:

  • 这正是视图控制器的视图属性以及我试图调整大小的子视图的样子。好吧,我猜主视图没有启用宽度拉伸。但除此之外都是一样的。
【解决方案2】:

我在这里找到了提示:How to resize App for Iphone 5?

基本上那里的答案之一建议直接编辑情节提要的xml。我进去看了看,我的viewController 中的顶级视图有autoresizesSubviews="NO",我将其更改为YES,这为我解决了问题。

正如我在原始帖子中所述,我完全确定在检查器窗格中选中了该复选框。我不知道为什么 xml 与检查器不匹配。

【讨论】:

  • 我也发现了这种情况。检查 Autoresize Subviews 复选框的数量似乎没有帮助。进入情节提要的 xml 并保存以使调整大小起作用。谢谢!
  • 我以编程方式将子视图添加到情节提要中的视图容器中。除了视图容器之外,我将所有内容都保留为 autoresizedSubviews="YES"。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-01
相关资源
最近更新 更多