1.首先创建一个选择器 Picker。可以使用枚举来定义选择器的选项,也可以使用数组来动态创建选项。下面是使用枚举来创建选择器的例子:
enum ColorOption: String, CaseIterable {
case red
case green
case blue
}
struct ContentView: View {
@State private var selectedColor = ColorOption.red
var body: some View {
Picker("Color", selection: $selectedColor) {
ForEach(ColorOption.allCases, id: \.self) { option in
Text(option.rawValue.capitalized).tag(option)
}
}
}
}
2.在选择器中使用 @State 属性来保存用户所选的值。选择器的 selection 参数和 @State 属性绑定,当用户选择不同的选项时,@State 属性的值也会相应地更新。
@State private var selectedColor = ColorOption.red
Picker("Color", selection: $selectedColor) {
// ...
}
3.在需要使用所选值的地方读取 @State 属性的值即可。
Text("Selected color is \(selectedColor.rawValue)")