SwiftUI 教程

SwiftUI 主页 SwiftUI 概览 SwiftUI 与 UIkit

SwiftUI 环境

SwiftUI 安装和环境配置 SwiftUI 基本组件 SwiftUI 构建第一个应用程序

SwiftUI 视图

SwiftUI 视图 SwiftUI 自定义文本视图 SwiftUI 自定义图像视图 SwiftUI 堆栈

SwiftUI 绘制形状

SwiftUI 形状 SwiftUI 绘制线条 SwiftUI 绘制矩形 SwiftUI 绘制圆角矩形 SwiftUI 绘制三角形 SwiftUI 绘制圆形 SwiftUI 绘制星形 SwiftUI 绘制多边形 SwiftUI 绘制饼图 SwiftUI 使用内置形状

SwiftUI 文本

SwiftUI 文本视图 SwiftUI 文本输入和输出

SwiftUI 颜色

SwiftUI 颜色 SwiftUI 颜色选择器 SwiftUI 渐变 SwiftUI 调整颜色

SwiftUI 效果

SwiftUI 效果 SwiftUI 混合效果 SwiftUI BLur 效果 SwiftUI 阴影效果 SwiftUI 悬停效果

SwiftUI 动画

SwiftUI 动画 SwiftUI 创建动画 SwiftUI 创建显式动画 SwiftUI 多个动画 SwiftUI 过渡 SwiftUI 不对称过渡 SwiftUI 自定义过渡

SwiftUI 图像

SwiftUI 图像 SwiftUI 图像作为背景 SwiftUI 旋转图像 SwiftUI 媒体

SwiftUI 视图布局

SwiftUI 视图布局 SwiftUI 视图大小 SwiftUI 视图间距 SwiftUI 视图填充

SwiftUI UI 控件

SwiftUI UI 控件 SwiftUI 按钮 SwiftUI 复选框 SwiftUI 菜单栏 SwiftUI 工具栏 SwiftUI 搜索栏 SwiftUI 文本字段 SwiftUI 滑块 SwiftUI 切换 SwiftUI 选择器 SwiftUI 菜单

SwiftUI 列表 &表格

SwiftUI 列表 SwiftUI 静态列表 SwiftUI 动态列表 SwiftUI 自定义列表 SwiftUI 表格

SwiftUI 表单

SwiftUI 表单 SwiftUI 在部分中拆分表单

SwiftUI 事件处理

SwiftUI 事件处理 SwiftUI 手势 SwiftUI 剪贴板 SwiftUI 拖放 SwiftUI 焦点 SwiftUI 警报

SwiftUI 杂项

SwiftUI 容器 SwiftUI 导航 SwiftUI 通知 SwiftUI 跨平台 UI SwiftUI 数据 SwiftUI 可访问性

SwiftUI 框架集成

SwiftUI 框架集成 SwiftUI 与 UIKit 交互 SwiftUI 创建 macOS 应用

SwiftUI 有用资源

SwiftUI 有用资源 SwiftUI 讨论


SwiftUI - 自定义列表

在 SwiftUI 中自定义列表非常重要,它可以增强列表的外观,使您的应用看起来更具吸引力。SwiftUI 提供了各种修饰符和方法来设置每个部分的样式,包括列表本身、部分、列表背景、行背景、分隔符、行和行的内容。

在 SwiftUI 中设置列​​表样式

在 SwiftUI 中,我们可以借助名为 .listStyle(_:) 的预定义修饰符来设置列表样式。 .listStyle(_:) 修饰符可通过六种不同选项自定义列表的外观,例如 −

  • automatic: 根据平台的默认行为设置列表样式。

  • grouped: 指定分组列表的外观。

  • inset: 指定插入列表的外观。

  • insetGrouped: 指定插入分组列表的外观。

  • plain: 指定普通列表的外观。

  • sidebar: 指定侧边栏列表的外观。它在标题部分显示一个公开指示器,用于折叠和展开部分。

语法

以下是语法 −

List{
    // items
}.listStyle(.automatic)

示例 1

以下 SwiftUI 程序用于使用 inset 设置列表样式。

import SwiftUI

struct ContentView: View {
   var body: some View {
      List{
         Section{
            Text("About Device")
            Text("Users and Account")
            Text("Google")
            Text("Help and Feedback")
         }header: {
            Text("About")
         }
         Section{
            Text("Battery")
            Text("Location")
            Text("Apps")
         }header: {
            Text("Apps")
         }
      }.listStyle(.inset)
   }
}
#Preview {
   ContentView()
}

输出

自定义列表

示例 2

以下 SwiftUI 程序用于使用分组设置列表样式。

import SwiftUI

struct ContentView: View {
   var body: some View {
      List{
         Section{
            Text("About Device")
            Text("Users and Account")
            Text("Google")
            Text("Help and Feedback")
         }header: {
            Text("About")
         }
         Section{
            Text("Battery")
            Text("Location")
            Text("Apps")
         }header: {
            Text("Apps")
         }
      }.listStyle(.grouped)
   }
}
#Preview {
   ContentView()
}

输出

自定义列表

在 SwiftUI 中自定义列表中的行

我们还可以借助以下修饰符 − 自定义列表的行和行内容

  • background(): 用于更改行的背景。

  • padding(): 用于调整行内的间距。

  • foregroundStyle(): 用于设置行内容的样式。

  • font(): 用于设置行的字体样式。

  • listRowSeparator(): 它设置与给定行关联的分隔符的显示模式。分隔符位于两行之间,或者我们可以说它们用于分隔行。

  • listRowSeparatorTint(): 它用于指定行分隔符的颜色。

  • listSectionSeparator(): 它用于指示部分分隔符是隐藏还是可见。节分隔符用于分隔节。

  • scrollIndicators():用于隐藏或显示滚动指示器。

  • listRowSpacing():用于调整两行之间的垂直间距。

  • listSectionSpacing:用于调整两个节之间的空间。

示例

以下 SwiftUI 程序用于自定义列表的行。

import SwiftUI

struct ContentView: View {
   var body: some View {
      List{
         Section{
            Text("About Device")
            Text("Users and Account")
            Text("Google")
            Text("Help and Feedback")
         }header: {
            Text("About")
         }
         Section{
            Text("Battery")
            Text("Location")
            Text("Apps")
         }header: {
            Text("Apps")
         }
      }.listStyle(.grouped)
         .lineSpacing(15.2)
         .listRowSpacing(3)
         .listRowSeparator(.hidden)
   }
}
#Preview {
   ContentView()
}

输出

自定义列表