6 视图分组

原文链接: https://developer.apple.com/documentation/swiftui/view-groupings

6 视图分组

用表单、控件组等不同用途驱动的容器来呈现视图。

概述

你可以创建服务于不同目的的视图组。

例如,Group 构造会把指定的视图当作一个整体来处理,而不附加任何额外的布局或外观特征。Form 则以适合收集用户输入的平台特有外观呈现一组元素。

关于设计指导,请参阅 Human Interface Guidelines 中的 布局。

把视图分组到容器中

把视图组织成区段

遍历动态数据

  • ForEach — 一种根据底层可标识数据集合按需计算视图的结构。
  • ForEachSectionCollection — 一种集合,允许在 for-each 循环中把视图当作其区段集合来处理。
  • ForEachSubviewCollection — 一种集合,允许在 for-each 循环中把视图当作其子视图集合来处理。
  • DynamicViewContent — 一种根据底层数据集合生成视图的视图类型。

访问容器的子视图

把视图分组到框中

  • GroupBox — 一种带可选标签的样式化视图,以视觉方式汇集一组逻辑上相关的内容。
  • groupBoxStyle(_:) — 设置该视图内分组框的样式。

对输入分组

  • Form — 一种用于对数据录入控件(例如设置或检查器中的控件)分组的容器。
  • formStyle(_:) — 设置视图层级中表单的样式。
  • LabeledContent — 一种用于把标签附加到承载值的视图上的容器。
  • labeledContentStyle(_:) — 为带标签的内容设置样式。

呈现一组控件

  • ControlGroup — 一种容器视图,以适合当前上下文的视觉方式显示语义上相关的控件。
  • controlGroupStyle(_:) — 设置该视图内控件组的样式。