在 SwiftUI 中使用模态視圖
SwiftUI 是 Apple 在 WWDC 2019 推出的新框架,它可以讓開發者快速開發出原生的 iOS、macOS、tvOS 和 watchOS 應用程式。在 SwiftUI 中,開發者可以使用模态視圖來提供更多的功能,讓使用者可以更輕鬆地完成任務。
模态視圖是一種特殊的視圖,它可以讓使用者在不離開當前視圖的情況下,檢視另一個視圖的內容。在 SwiftUI 中,模态視圖可以使用 presentationMode 來呈現,它可以讓開發者控制視圖的呈現方式,例如:淡入淡出、放大縮小等。
要在 SwiftUI 中使用模态視圖,首先需要宣告一個 @State 的 Bool 型別,用來控制視圖的呈現:
@State private var showModal = false
接著,在要呈現模态視圖的按鈕中,使用 .sheet 修飾器來呈現模态視圖:
Button(action: {
self.showModal = true
}) {
Text("Show Modal")
}
.sheet(isPresented: $showModal) {
ModalView()
}
在上面的程式碼中,當使用者按下按鈕時,showModal 的值會被設定為 true,而 .sheet 修飾器會根據 showModal 的值來決定是否要呈現模态視圖。
在模态視圖中,可以使用 presentationMode 來控制視圖的呈現方式:
struct ModalView: View {
@Environment(\.presentationMode) var presentationMode
var body: some View {
VStack {
Text("This is a modal view")
Button(action: {
self.presentationMode.wrappedValue.dismiss()
}) {
Text("Dismiss")
}
}
}
}
在上面的程式碼中,我們使用 presentationMode 來控制視圖的呈現方式,當使用者按下按鈕時,presentationMode 的 dismiss() 方法會被呼叫,讓模态視圖可以被關閉。
總結:
在 SwiftUI 中,開發者可以使用模态視圖來提供更多的功能,讓使用者可以更輕鬆地完成任務。要在 SwiftUI 中使用模态視圖,首先需要宣告一個 @State 的 Bool 型別,用來控制視圖的呈現,接著,在要呈現模态視圖的按鈕中,使用 .sheet 修飾器來呈現模态視圖,在模态視圖中,可以使用 presentationMode 來控制視圖的呈現方式。
推薦閱讀文章
How to present modal views in SwiftUI
How to Create Modal Views in SwiftUI
SwiftUI Modal Tutorial: Getting Started
Modal Views in SwiftUI
Modal views in SwiftUI</a
延伸閱讀本站文章
延伸閱讀本站文章
SwiftUI 入門指南
Swift 圖片緩存 🎥高效快速存取圖片
Swift UIViewController 自定義返回按钮 🔙🎨
Swift UIGestureRecognizer使用🖐️ – 手勢辨識教學
Swift 離線資料存取 💾 離線資料快速存取法
Swift 影片拍攝:AVCaptureSession 🎥
Swift 圖片下載 🖼️
💾Swift 存儲 & 讀取數據 | 數據持久化 💾
Swift 動畫效果實作 (UIView.animate)
Swift 數字輪播器 🔢🔄