添加项目
本课属于 Coddy Swift 学习旅程的“SwiftUI 入门”单元。第 32 课,共 50 课。
将项目保存在 @State 中,数组发生变化时,列表会自动更新。只需一个文本框和一个按钮,就能添加项目:
@State private var items = ["Milk"]
@State private var newItem = ""
var body: some View {
VStack {
TextField("New item", text: $newItem)
Button("Add") {
items.append(newItem)
newItem = ""
}
List(items, id: \.self) { item in
Text(item)
}
}
}items.append(newItem) 会将输入的文本添加到数组中,而 newItem = "" 会清空输入框,以便输入下一项。由于 items 是状态,列表会立即显示新行。
字段为空时,可以禁用按钮:.disabled(newItem.isEmpty)。
挑战
中等让 Add 按钮正常工作:将 newItem 添加到 items 中,然后清空输入框。列表已经显示 items。
亲手试试
import SwiftUI
@main
struct CoddyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
SwiftUI 入门中的所有课
自己练习: SwiftUI 在线编辑器