SwiftUI 布局(Layout)基础

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SwiftUI 布局(Layout)基础相关的知识,希望对你有一定的参考价值。

参考技术A

VStack 会一次性渲染所有视图,无论它们是在屏幕上还是屏幕外。 当您有少量子视图或不希望“懒加载”延迟渲染时,请使用常规 VStack。

alignment:对接方式,左/中/右

spacing:间距

HStack 会一次性渲染所有视图,无论它们是在屏幕上还是屏幕外。 当您有少量子视图或不希望“懒加载”延迟渲染时,请使用常规 HStack。

ZStack 为每个连续的子视图分配比前一个更高的 z 轴值,这意味着后面的子视图出现在前面的子视图的“顶部”。
下面的示例创建一个 100 x 100 点的 ZStack 矩形视图,填充六种颜色之一,将每个连续的子视图偏移 10 点,使它们不会完全重叠:

zIndex:层叠优先级,从大到小1-0

一个灵活的填充空间布局,垂直/水平填充,默认填充满剩余所有空间,也可以指定填充的宽度或高度

minLength:设置填充最小宽度/高度

滚动视图在可滚动内容区域内显示其内容。 当用户执行适合平台的滚动手势时,滚动视图会调整底层内容的可见部分。 ScrollView 可以水平、垂直或同时滚动,但不提供缩放功能。(一般配合HStack、VStack等布局使用)
在以下示例中,ScrollView 允许用户滚动包含 100 个文本视图的 VStack。 列表后的图像显示了右侧滚动视图的临时可见滚动条; 您可以使用 ScrollView 初始值设定项的 showsIndicators 参数禁用它。

Axis.set: 设置滚动方向/水平/垂直
showsIndicators:是否显示滚动指示器

一个容器视图,将其内容定义为它自己的大小和坐标空间的函数。可以获取到视图的大小和坐标

通常使用 ViewBuilder 作为子视图生成闭包参数的参数属性,允许这些闭包提供多个子视图。 例如,以下CustomView接受一个通过视图构建器生成一个或多个视图的闭包。(通常用来自定义View、dialog、toast等)

控件显示到屏幕里才会加载(性能会有提升)

控件显示到屏幕里才会加载

以上是关于SwiftUI 布局(Layout)基础的主要内容,如果未能解决你的问题,请参考以下文章

Swift之深入解析SwiftUI布局如何自定义AlignmentGuides

Swift自适应布局(Adaptive Layout)教程

Swift自适应布局(Adaptive Layout)教程

Swiftui - 列表第一项的不同视图(布局)

SwiftUI Picker 多个错误,核心数据,布局

SwiftUI:Toggle详解