UIStackView 表单布局

UIStackView Form Layout

我正在创建一个包含多个字段的基本表单。我想使用 UIStackView 来布置所有控件。我将如何执行以下操作以使控件正确对齐? UIStackView 是正确的方法吗?

你绝对可以使用 StackViews 来实现这一点。

如何排列 StackView 取决于您希望如何管理对齐方式。

这是我的推荐:

  1. 将您的标签放在一个垂直对齐的堆栈视图中,然后
  2. 将您的文本字段放在另一个垂直对齐的堆栈视图中
  3. 将两个堆栈视图放在水平对齐的堆栈视图中

您可能希望将 distribution 设置为在两个较小的堆栈视图上平均填充,然后将 spacing 设置为对每个较小的堆栈视图相同。 最后,您将能够在水平堆栈视图上设置间距,以设置文本和文本字段之间的 space。(最后一部分是我设置的原因他们像这样。)

Apple suggests 使用每个标签和字段创建水平堆栈视图,然后将它们放入垂直堆栈视图中。

这是有道理的,因为如果您稍后将其中一个控件更改为另一个控件(比如弹出按钮),您可以保持标签和控件基线对齐。