如何使用 SwiftUI 创建 sheet view

SwiftUI 的 sheet view属于模态视图,将会在调用视图上层显示,如下图所示:


sheetView.png

使用示例如下:

// 创建一个View,作为sheet view
struct DetailView: View {
    var body: some View {
        Text("Detail")
    }
}

// 在content view 中触发sheet view 显示
struct ContentView: View {
     // 用来触发sheet view显示的标志
    @State var showingDetail = false

    var body: some View {
        Button(action: {
            // 设置触发变量为true
            self.showingDetail.toggle()
        }) {
            Text("Show Detail")
        }
        // 设置sheet
        .sheet(isPresented: $showingDetail) {
            DetailView()
        }
    }
}

创建步骤如下:

  • 首先定义sheet要展示的view
  • 在触发view中定义触发变量
  • 在触发点加上.sheet(isPeresented: Bool)
  • 在触发点设置触发变量的值为true

参考文章

  • How to present a new view using sheets

你可能感兴趣的:(如何使用 SwiftUI 创建 sheet view)