AutoLayout Size Classes - 不同的比例高度

You*_*wad 3 iphone ipad ios autolayout size-classes

我需要将子视图的高度设置为与其父视图成比例.在iPad上,我需要它是高度的三分之一,而在iPhone上我需要它是一半.在"AnyAny"大小类中,我创建约束并将乘数设置为0.3333333.这样做可以在iPad上实现.当我将size类更改为"CompactRegular"时,我将约束的乘数更改为0.5.虽然这使它在iPhone上占了一半,但它也适用于iPad.如何使尺寸类具有不同的乘数?

Józ*_*sza 5

您需要为Compact/Regular添加一个新约束,并确保原始的约束只安装在Any/Any中,如下所示:

  • 在Any/Any中,添加原始约束(subview.height = superview.height*0.33).
  • 切换到Compact/Regular,然后选择之前添加的约束.
  • 在尺寸检查器中,单击"已安装"旁边的"+"按钮,然后选择"紧凑/常规".现在您可以在Compact/Regular中禁用"已安装"(参见图片).
  • 添加新约束(subview.height = superview.height*0.5),并确保它仅以紧凑/常规模式安装.

尺寸检查员

  • 这些尺寸等级还不足以识别iPhone 6s plus和iPhone 5屏幕尺寸之间的差异吗? (2认同)