iOS9 故事板自动布局

iOS9 Storyboards Auto Layout

我正在努力使我的应用程序的故事板对所有 Apple 设备通用。我的一些视图的自动布局有问题。我正在考虑为每个设备制作一个故事板,因为我认为它最终会看起来更好,因为我可以为每种类型的屏幕设置不同的字体和按钮大小。

你们会推荐我做什么? 谢谢

一个好的方法是使用 autolayoutssize 类。这种方法将允许您只为 iPhone 和 iPad 创建一个故事板。您可以轻松地为不同的设备调整字体大小,还可以使用大小 类.

为不同的屏幕尺寸制作不同的 buttons/views position/size

您应该使用尺寸 类,其中 "any width , any height " 最适合所有布局。

AFIK 你不能只使用大小 类 来确定屏幕大小,然后根据它设置字体大小。正如您在 Storyboards 中编辑时所看到的,您可以设置特定大小的字体大小 类 例如。紧凑型、常规型等,但不包括 iPhone 5、6 或 6+。如果你想为不同的屏幕尺寸使用不同的字体大小,你可以使用 UIA​​ppearance 以集中的方式设置文本元素的样式,或者为 UI 元素创建 IBOutlets 并根据需要设置字体大小或其他属性.使用其中任何一个,您可能仍需要使用以下内容检查屏幕尺寸:

switch UIScreen.mainScreen().bounds.size.width{
case kIphone6PlusWidth:
    label.font = label.font.fontWithSize(20)
case kIphone6Width:
    label.font = label.font.fontWithSize(18)
default:
    label.font = label.font.fontWithSize(14)
}

或者,为每个单独的故事板提供可定制性,但在不同的故事板中布置 UI 元素会导致大量重复。