使用尺寸等级的设计未按预期工作
Posted
技术标签:
【中文标题】使用尺寸等级的设计未按预期工作【英文标题】:Design using size classes not working as expected 【发布时间】:2016-04-07 22:09:52 【问题描述】:我想描述一下我在使用 Size Classes 时遇到的问题(及其相应的解决方案)。
对于 UIViewController 和仅限 iPhone 的环境,我希望横向和纵向有不同的布局。我在使用 Size Classes 的 Interface Builder 上有相应的设计。但是,在模拟器上运行应用程序时,无论设备方向如何,我总是得到纵向布局。
我尝试了两种不同的方法:
-
为 Any-Any Size Class 创建纵向布局,为 wAny-hCompact 创建横向布局。
为 wCompact-hRegular 创建纵向布局,为 wAny-hCompact 创建横向布局,为 Any-Any 创建不同的布局。
在这两种情况下,所有 iPhone 设备和方向的 Interface Builder 的预览功能看起来都很好,但在模拟器上,无论设备方向如何,我总是看到纵向布局。
我使用的是 Xcode 7.2,并且我已经在 ios 8.4 和 9.2 上尝试了所有 iPhone 模拟器。在任何大小类上都没有看到关于自动布局约束的警告。
【问题讨论】:
【参考方案1】:这个问题原来与大小类的使用无关。我没有注意到在呈现有问题的视图控制器时收到了这个警告:Presenting view controllers on detached view controllers is discouraged
解决该问题并删除该警告使一切按预期工作。
【讨论】:
以上是关于使用尺寸等级的设计未按预期工作的主要内容,如果未能解决你的问题,请参考以下文章
CollectionView estimatedItemSize 未按预期工作