Menu
CoddyTech

可识别的项目

本课属于 Coddy Swift 学习旅程的“SwiftUI 入门”单元。第 30 课,共 50 课。

真实的列表会保存结构体,两个条目可能有相同的名称。让结构体符合 Identifiable,为每个条目赋予独立身份:它需要一个 id 属性,并且每个条目的属性值都不同。

struct Book: Identifiable {
    let id = UUID()
    let title: String
    let author: String
}

每次创建 Book 时,UUID() 都会生成一个新的随机唯一值。对于符合 Identifiable 的项目,ForEach 不需要 id: 参数:

ForEach(books) { book in
    VStack(alignment: .leading) {
        Text(book.title)
            .font(.headline)
        Text(book.author)
    }
}
challenge icon

挑战

简单

Book 几乎可以用于 ForEach 了。添加 let id = UUID() 属性,使它遵循 Identifiable,然后在 VStack 中使用 ForEach(books) 显示每本书的标题。

亲手试试

import SwiftUI

@main
struct CoddyApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

SwiftUI 入门中的所有课

自己练习: SwiftUI 在线编辑器