SwiftUI 简明教程之容器

本文为 Eul 样章,如果您喜欢,请移步 AppStore/Eul 查看更多内容。

Eul 是一款 SwiftUI & Combine 教程 App(iOS、macOS),以文章(文字、图片、代码)配合真机示例(Xcode 12+、iOS 14+,macOS 11+)的形式呈现给读者。笔者意在尽可能使用简洁明了的语言阐述 SwiftUI & Combine 相关的知识,使读者能快速掌握并在 iOS 开发中实践。

Form

Form 用于快速构建表单视图,比如 app 中常用的设置页面。

Form 和 List 非常相似,只是 List 有多种样式可以选择,而 Form 样式单一。

Group

在官方文档中关于 ViewBuilder 的描述中,我们可以清晰地看到,构建视图的闭包中,最多只能传入 10 个子视图。

当我们在 HStack 或 VStack 中生成超过 10 个视图时,编译器会提示“Extra argument in call”错误,Group 则可以解决这个参数过多的问题,它可以将多个视图组合在一起。我们只需要使用Group { // Views } 这样的写法就可以实现。

除了这个作用外,Group 还可以将多个调用同样 modifier 的视图组合在一起,然后以 Group 的形式调用一次就可以了,使代码精简易读。

GroupBox

GroupBoxGroup 的加强版,我们可以给每个组合添加一个 label 以示其功能,我们甚至可以通过 GroupBoxStyleConfiguration 来构建自定义视图。

Section

带有 header 和 footer 的组合视图。

本文为 Eul 样章,如果您喜欢,请移步 AppStore/Eul 查看更多内容。

posted @ 2021-06-09 19:51  Bruce2077  阅读(216)  评论(0编辑  收藏  举报