Modifier
Skip support for custom View Modifiers ↗ 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
ModifierPlayground.swift ↗
import SwiftUI
struct ModifierPlayground: View { var body: some View { Text("This text uses a custom modifier that adds a Dismiss button to the navigation bar above") .padding() .dismissable() .toolbar { PlaygroundSourceLink(file: "ModifierPlayground.swift") } }}
extension View { public func dismissable() -> some View { modifier(DismissModifier()) }}
struct DismissModifier: ViewModifier { @State var isConfirmationPresented = false @Environment(\.dismiss) var dismiss
func body(content: Content) -> some View { content .toolbar { Button(action: { isConfirmationPresented = true }) { Label("Dismiss", systemImage: "trash") } } .confirmationDialog("Dismiss", isPresented: $isConfirmationPresented) { Button("Dismiss", role: .destructive, action: { dismiss() }) } }}