SwiftUI 表單:Picker

在 TextField 和 Toggle 之後,另一個常見的表單控件是 Picker。它允許我們在一系列可選項中進行選擇。 首先,我們需要有一個包含選項列表的數組: var cities = ["Rome", "Milan", "Venice", "Florence"] 然後,我們需要一個屬性來存儲所選擇的選項。我們使用 @State 對其進行封裝,因為它是基於用戶輸入而變化的內容: @State private var selected = "Rome" 最後,我們使用 Picker 視圖。我們傳遞 2 個參數。第一個是標籤,第二個是用於所選項的屬性,在閉包中,我們使用 ForEach 視圖 為每個不同的選項添加一個文本視圖: Picker("What's your favorite city?", selection: $selected) { ForEach(cities, id: \.self) { Text($0) } } 這是我們的 ContentView 的完整代碼: struct ContentView: View { var cities = ["Rome", "Milan", "Venice", "Florence"] @State private var selected = "Rome" var body: some View { Form { Picker("What's your favorite city?...

SwiftUI:NavigationView視圖

NavigationView視圖是非常重要的視圖,您會一直使用它。 NavigationView { } 一旦將視圖包裝到NavigationView中,您可以使用navigationTitle()修改器為視圖添加標題: NavigationView { Text("Hello") .navigationTitle("Welcome") } 然而,最重要的好處是現在我們可以使視圖成為導航到其他視圖的鏈接。 首先,我們創建另一個視圖。您可以將它添加到相同的文件中,也可以添加到項目中的另一個文件中: struct ThanksView: View { var body: some View { Text("Thanks for checking out the app!") } } 然後,將“Hello” Text視圖包裝到NavigationLink視圖中,其中我們將目的地參數設置為ThanksView: NavigationView { NavigationLink(destination: ThanksView()) { Text("Hello") .navigationTitle("Welcome") } } 現在,許多事情正在自動進行:Hello文本變為藍色並可點擊: 一旦我們點擊它,我們將顯示ThanksView和返回原始視圖的鏈接。左上角按鈕中顯示的文本來自我們設置的navigationTitle修改器: 以下是示例中使用的完整代碼: import SwiftUI struct ThanksView: View { var body: some View { Text("Thanks for checking out the app!") } } struct ContentView: View { var body: some View { NavigationView { NavigationLink(destination: ThanksView()) { Text("Hello") ....