为有牺牲多壮志,敢教日月换新天。

[Swift UI]二、实用控件-(1)方便用户选中项目的Picker拾取器

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(let_us_code)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址: https:////www.cnblogs.com/strengthen/p/12290542.html
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

本文演示Picker视图的使用,

Picker和UIKit里的UIPickerView类似。

主要用于提供一个滚动列表,方便用户的选择。

 1 import SwiftUI
 2 
 3 struct ContentView : View
 4 {
 5     //列表的数据源:给当前的结构体添加一个数组属性,作为Picker列表的数据源。
 6      var fruits = ["Apple", "Banner", "Pear", "Watermelon"]
 7     //添加另一个数组属性,作为Picker列表的每一个选项的字体颜色。
 8      var colors = [Color.blue, Color.orange, Color.red, Color.purple]
 9     //添加一个整形属性,作为列表里的处于选择状态的选项的索引值,
10     //使该属性和界面的Picker视图进行数据绑定。
11      @State private var selectedItem = 0
12 
13      var body: some View
14      {
15         VStack
16         {
17             //初始化一个Picker视图,并将它和selectedItem属性进行绑定,
18             //当用户操作Picker视图时,该属性的值将同步发生变化。
19             Picker(selection: $selectedItem, label: Text("Fruits"))
20             {
21                 //接着来设置Picker视图的内容。
22                 //首先添加一个循环语句,对数组进行遍历操作。
23                 ForEach(0 ..< fruits.count)
24                 {
25                     //通过文本视图,显示数组里的每一个元素。
26                     Text(self.fruits[$0]).tag($0)
27                         //从颜色数组里获取指定的颜色,作为文本视图的字体颜色。
28                         .foregroundColor(self.colors[$0])
29                 }
30             }
31             //添加一个文本视图,显示用户所选的内容。
32             Text("Your choice: ")
33                 //通过扩展加号方法,添加另一个文本视图,显示用户所作的选项。
34             + Text("\(fruits[selectedItem])").foregroundColor(self.colors[selectedItem])
35         }
36      }
37 }
38 
39 #if DEBUG
40 struct ContentView_Previews : PreviewProvider {
41     
42     static var previews: some View {
43         ContentView()
44     }
45 }
46 #endif

 

posted @ 2020-02-10 12:45  为敢技术  阅读(411)  评论(0)    收藏  举报