参考资料:http://hdjc8.com/hdjc/swiftUI/
Picker相当于UIKit中的UIPickerView,用于实现若干项目的选择。
示例代码:
struct ContentView : View {
//给当前的结构体添加一个数组属性,作为Picker列表的数据源。
var fruits = ["Apple", "Banner", "Pear", "Watermelon"]
//添加另一个数组属性,作为Picker列表的每一个选项的字体颜色。
var colors = [Color.blue, Color.orange, Color.red, Color.purple]
//然后添加一个整型属性,作为列表里的处于选择状态的选项的索引值,并给它添加@State绑定包装标记,使该属性和界面中的Picker视图进行数据绑定。
@State private var selectedItem = 0
var body: some View {
VStack {
//初始化一个Picker视图,并将它和selectedItem属性进行绑定,当用户操作Picker视图时,该属性的值将同步发生变化。
Picker(selection: $selectedItem, label: Text("Fruits")) {
//接着来设置Picker视图的内容,首先添加一个循环语句,对数组进行遍历操作。
ForEach(0 ..< fruits.count) {
Text(self.fruits[$0]).tag($0).foregroundColor(self.colors[$0])
}
}
Text("Your choice: ")
+ Text("\(fruits[selectedItem])").foregroundColor(self.colors[selectedItem])
}
}
}
查看运行结果: