为什么iPhone 4,5,6在横向方向上的紧凑宽度和紧凑高度

Shr*_*hna 28 iphone ios size-classes adaptive-user-interfaces

我是iOS开发的新手,只是研究适应性和布局我有点困惑,

根据文档

iOS定义了两个大小类:

  1. 常规: - 它与广阔的空间相关联
  2. 紧凑: - 它与受限空间相关联

通过其他参考:

  1. 纵向方向的所有iPhone(左上角)都有一个规则的高度和一个紧凑的宽度 Iphone在肖像

  2. 横向方向的Iphone 4,5和6具有紧凑的高度和紧凑的宽度. 横向iphone

  3. 但是对于iPhone 6 Plus,它具有紧凑的高度和横向的规则宽度.

    Iphone 6毛绒景观

我的困惑是:

  • iPhone 4,5,6在纵向模式下具有规则的高度和紧凑的宽度但是为什么它们在横向方向上没有规则的宽度和紧凑的横向高度?
  • 如果是这样,为什么iPhone 6 plus与它们不同?是因为它的屏幕比iPhone 6大0.8英寸?重要吗?

在此先感谢!,热烈欢迎编辑!

我知道它在技术上到目前为止不会对开发产生影响但我只想让我的脑海中清楚这些事情.

Cra*_*ems 3

如果是这样,那么为什么 iPhone 6 plus 与它们不同呢?是因为它的屏幕比 iPhone 6 大 0.8 英寸吗?这很重要吗?

当您使用分割视图控制器时,这一点很重要。当它在 iPhone 5 和 6 上具有相同的折叠外观时,它将在 iPhone 6+ 上以横向方式拆分并并排显示主视图控制器和详细视图控制器。

尺码等级图解

它在 iPad 上看起来更没用,因为它在纵向横向上都有常规的高度和宽度尺寸类别。

关键是,当您使用常规尺寸类别时,您应该比紧凑尺寸类别布局和显示更多内容。

然而,尺寸类别与屏幕无关,而是与视图控制器相关。

当您的 iPad 具有主视图控制器和详细视图控制器时,主视图控制器具有紧凑宽度/常规高度,而详细视图控制器具有常规宽度/常规高度。

您仍然可以通过覆盖子视图控制器的尺寸类来更改它们

-(void)setOverrideTraitCollection:(UITraitCollection *)collection forChildViewController:(UIViewController *)childViewController
Run Code Online (Sandbox Code Playgroud)

-(UITraitCollection *)overrideTraitCollectionForChildViewController:(UIViewController *)childViewController.
Run Code Online (Sandbox Code Playgroud)

这是 iPad 的一个关键概念,因为您现在可以在 iOS9 上通过新的多任务功能(从屏幕右侧滑动)让您的应用程序以紧凑的宽度运行。