콘텐츠로 이동
Skip

Sheet

이 콘텐츠는 아직 번역되지 않았습니다.

Skip support for SwiftUI.View.sheet on Android. Consult the SkipUI module for a complete list of supported SwiftUI.

The following example screens and source code is from SkipUI’s Showcase sample app SheetPlayground.swift

Android screenshot for Sheet component (light mode) iPhone screenshot for Sheet component (light mode) iPhone screenshot for Sheet component (dark mode) Android screenshot for Sheet component (dark mode)
import SwiftUI
struct SheetPlayground: View {
@State var isPresented = false
var body: some View {
Button("Present sheet") {
isPresented = true
}
.sheet(isPresented: $isPresented) {
SheetContentView(dismissSheet: { isPresented = false })
}
.toolbar {
PlaygroundSourceLink(file: "SheetPlayground.swift")
}
}
}
struct SheetContentView: View {
@State var isPresented = false
@State var counter = 0
@Environment(\.dismiss) var dismiss
let dismissSheet: () -> Void
var body: some View {
NavigationStack {
List {
Button("Present another") {
isPresented = true
}
Button("Dismiss via state") {
dismissSheet()
}
Button("Dismiss via environment") {
dismiss()
}
Button("Increment counter: \(counter)") {
counter += 1
}
ForEach(0..<40) { index in
Text("Content row \(index)")
}
}
.navigationTitle("Sheet")
}
.sheet(isPresented: $isPresented) {
SheetContentView(dismissSheet: { isPresented = false })
}
}
}