使用大小类设计不按预期工作

时间:2016-01-04 10:11:10

标签: ios xcode interface-builder size-classes

我想描述一下我使用Size Classes的问题(及其相应的解决方案)。

对于UIViewController和仅限iPhone的环境,我希望为横向和纵向设置不同的布局。我在Interface Builder上使用Size Classes进行了相应的设计。但是,在模拟器上运行应用程序时,无论设备方向如何,我始终都会获得纵向布局。

我尝试了两种不同的方法:

  1. 为任意大小类创建纵向布局,为wAny-hCompact创建横向布局。
  2. 为wCompact-hRegular创建纵向布局,为wAny-hCompact创建横向布局,为Any-Any创建不同的布局。
  3. 在这两种情况下,所有iPhone设备和方向的Interface Builder的预览功能一切都很好,但在模拟器上我总是看到纵向布局,无论设备方向如何。

    我正在使用Xcode 7.2,我已经在iOS 8.4和9.2上尝试了所有iPhone模拟器。在任何Size Classes上都没有关于autolayout约束的警告。

1 个答案:

答案 0 :(得分:0)

问题结果与Size Classes的使用无关。在呈现有问题的视图控制器时,我没有注意到我收到此警告:Presenting view controllers on detached view controllers is discouraged

修复该问题并删除该警告使一切按预期工作。