SwiftUI - 静态列表
SwiftUI 提供了一个称为列表的强大组件。列表是一种容器,用于将数据存储在单列结构中,其中每条数据都称为列表的一个项目。列表有两种类型:静态和动态。
静态列表是内容无法更改的列表,这意味着静态列表的项目是预定义的,不依赖于任何外部数据源。在本章中,我们将学习如何创建静态列表、自定义静态列表以及有关静态列表的更多信息。
在 SwiftUI 中创建静态列表
在 SwiftUI 中,我们可以借助列表视图创建静态列表。它在单个列中显示所有指定的数据,行中的数据称为项目。
它还为我们提供了从列表中选择一个或多个项目的能力。我们还可以借助此视图提供的修饰符根据我们的需求自定义列表。
语法
以下是语法 −
List{ Text("item 1") Text("item 2") Text("item 3") }
示例 1
以下 SwiftUI 程序用于创建静态列表。此列表存储主题的名称。
import SwiftUI struct ContentView: View { var body: some View { // 创建一个简单的静态列表 List{ Text("Maths") Text("Science") Text("English") Text("GK") } } } #Preview { ContentView() }
输出

在 SwiftUI 中创建列表部分
在 SwiftUI 中,我们可以创建一个或多个列表的组,并借助 Section 视图将它们分节显示。或者我们可以说,部分用于在每个列表之间创建视觉分隔,也用于在指定视图之间建立层次结构。
我们还可以设置每个部分的页眉和页脚。部分顶部的内容称为页眉,通常用于描述部分包含的内容,而部分底部的内容称为部分的页脚,用于显示摘要或与该部分相关的附加内容。
语法
以下是语法 −
List{ Section{ Text("item 1") Text("item 2") Text("item 3") }header:{ Text("My Header") } Section{ Text("item 1") Text("item 2") Text("item 3") }footer:{ Text("My Footer") } }
示例
以下 SwiftUI 程序用于从给定点绘制一条线。
import SwiftUI struct ContentView: View { var body: some View { // Creating a static list with section List{ Section{ Text("Maths") Text("Science") Text("English") Text("GK") }header: { Text("Subjects") } Section{ Text("Class 1") Text("Class 2") Text("Class 3") Text("Class 4") }header: { Text("Classes") }footer: { Text("These list contains all the enrolled students") } } } } #Preview { ContentView() }
输出

自定义静态列表
列表不仅限于简单的文本项或部分,我们还可以添加切换按钮、文本字段、步进器、滑块、图标等。SwiftUI 允许我们在其中存储任何类型的数据以及组件。让我们创建一个包含以下内容的自定义列表 −
示例
以下 SwiftUI 程序用于创建自定义列表。此处列表包含切换按钮和标签内容。
import SwiftUI struct ContentView: View { @State var select = true var body: some View { // 创建自定义静态列表 List{ Section{ Toggle(isOn: $select){ Text("Maths") } LabeledContent("Class 1", value: "off") Text("Science") } } } } #Preview { ContentView() }
输出
