基础知识

sheet

在给定条件为真时显示工作表。

func sheet<Content>(isPresented: Binding<Bool>, onDismiss: (() -> Void)? = nil, content: @escaping () -> Content) -> some View where Content : View
  • isPresented
    是否显示工作表的绑定。
  • onDismiss
    工作表关闭时执行的关闭。
  • content
    返回表内容的闭包。

代码

import SwiftUI
struct ContentView:View {
    var body: some View{
        TestSheet()
    }
}
struct TestSheet: View {
    @State private var popoverIsShown = false
    var body: some View {
        Button("显示 Sheet") {
            self.popoverIsShown = true
        }
        .sheet(isPresented: self.$popoverIsShown) {
            RandomSheet(popoverIsShown: self.$popoverIsShown)
        }
    }
}

struct RandomSheet: View {
    @Binding var popoverIsShown: Bool
    var body: some View {
        Button("关闭") { self.popoverIsShown = false }
    }
}