在 SwiftUI 中使用下拉選單
SwiftUI 是 Apple 在 WWDC 2019 推出的新框架,它可以讓開發者快速開發出跨平台的 App,而且可以讓開發者更容易地撰寫 UI 程式碼。在 SwiftUI 中,開發者可以使用下拉選單來提供使用者更多的選擇,並且可以讓使用者更容易地選擇他們想要的選項。
在 SwiftUI 中,開發者可以使用 Picker
來建立下拉選單,它可以讓開發者指定下拉選單中的選項,並且可以讓使用者選擇他們想要的選項。下面是一個簡單的範例,它可以讓使用者選擇他們的性別:
struct ContentView: View {
@State private var selectedGender = 0
var body: some View {
VStack {
Picker(selection: $selectedGender, label: Text("Gender")) {
Text("Male").tag(0)
Text("Female").tag(1)
}
.pickerStyle(SegmentedPickerStyle())
}
}
}
在上面的範例中,我們使用 Picker
來建立一個下拉選單,並且指定 selectedGender
為選擇的結果,然後我們使用 Text
來指定下拉選單中的選項,並且使用 tag
來指定每個選項的值,最後我們使用 pickerStyle
來指定下拉選單的樣式,在這個範例中,我們使用 SegmentedPickerStyle
來建立一個分段式的下拉選單。
另外,開發者也可以使用 ActionSheet
來建立一個下拉選單,它可以讓使用者在一個彈出式的視窗中選擇他們想要的選項,下面是一個簡單的範例:
struct ContentView: View {
@State private var selectedColor = 0
var body: some View {
VStack {
Button(action: {
self.showActionSheet()
}) {
Text("Select Color")
}
}
}
func showActionSheet() {
let actionSheet = ActionSheet(title: Text("Select Color"), message: nil, buttons: [
.default(Text("Red"), action: { self.selectedColor = 0 }),
.default(Text("Green"), action: { self.selectedColor = 1 }),
.default(Text("Blue"), action: { self.selectedColor = 2 }),
.cancel()
])
UIApplication.shared.windows.first?.rootViewController?.present(actionSheet, animated: true)
}
}
在上面的範例中,我們使用 ActionSheet
來建立一個彈出式的視窗,並且指定 selectedColor
為選擇的結果,然後我們使用 Text
來指定彈出式視窗中的選項,並且使用 action
來指定每個選項的值,最後我們使用 present
來顯示彈出式視窗。
總結來說,在 SwiftUI 中,開發者可以使用 Picker
或 ActionSheet
來建立下拉選單,它們可以讓使用者更容易地選擇他們想要的選項,而且可以讓開發者更容易地撰寫 UI 程式碼。
推薦閱讀文章
How to use a picker in SwiftUI
How to Create a Picker in SwiftUI
SwiftUI Pickers Tutorial: Getting Started
Using Pickers in SwiftUI
How to Customize Picker Style in SwiftUI</a
延伸閱讀本站文章
延伸閱讀本站文章
SwiftUI 入門指南
Swift 圖片緩存 🎥高效快速存取圖片
Swift UIViewController 自定義返回按钮 🔙🎨
Swift UIGestureRecognizer使用🖐️ – 手勢辨識教學
Swift 離線資料存取 💾 離線資料快速存取法
Swift 影片拍攝:AVCaptureSession 🎥
Swift 圖片下載 🖼️
💾Swift 存儲 & 讀取數據 | 數據持久化 💾
Swift 動畫效果實作 (UIView.animate)
Swift 數字輪播器 🔢🔄