Skip to main content

Verschachteltes Optionsmenü

Beschreibung

Diese View zeigt ein Optionsmenü mit verschachtelten Einträgen. Neben direkten Aktionen wie Profil und Hilfe enthält es ein Untermenü für Einstellungen, über das thematisch gruppierte Punkte wie Allgemein und Datenschutz erreichbar sind. Damit lassen sich mehrere Ebenen von Aktionen kompakt bündeln.

🔍 Zweck

  • Hierarchische Aktionen übersichtlich strukturieren
  • Einstellungen thematisch gruppieren ohne eigene Ansicht
  • Sekundäre Aktionen als Overflow Menü anbieten
  • Kontextmenüs für Toolbars oder Karten prototypisieren
  • Konsistente Navigationsmuster für komplexe Aktionen demonstrieren

🖥️ Betriebssystem

iOS

📄 Codebeispiel

import SwiftUI

@main
struct NestedMenuApp: App {
    var body: some Scene {
        WindowGroup {
            NestedMenuExample()
        }
    }
}

public struct NestedMenuExample: View {
    public init() {}

    public var body: some View {
        // Root menu that groups related actions
        Menu("Options") {
            // Direct action item
            Button("Profile") {
                // Handle profile action
                print("Open Profile")
            }

            // Nested submenu for settings related actions
            Menu("Settings") {
                Button("General") {
                    // Handle general settings
                    print("Open General Settings")
                }
                Button("Privacy") {
                    // Handle privacy settings
                    print("Open Privacy Settings")
                }
            }

            // Another direct action item
            Button("Help") {
                // Handle help action
                print("Open Help")
            }
        }
        .padding()
        // Accessibility label to clarify control purpose
        .accessibilityLabel("Options menu")
    }
}

// Modern Swift 5.10+ preview syntax
#Preview {
    NestedMenuExample()
}