Skip to main content

Segmentierter Picker für Auswahloptionen

Beschreibung

Diese View zeigt einen segmentierten Picker, mit dem der Nutzer zwischen verschiedenen Auswahlmöglichkeiten wechseln kann. Der aktuelle Wert wird im State gespeichert und die Auswahl kann barrierefrei über ein Accessibility Label angesprochen werden.

🔍 Zweck

  • Auswahl von Zeitintervallen (z. B. täglich, wöchentlich, monatlich)
  • Filterung von Daten in einer Übersicht
  • Steuerung von Anzeigeoptionen in Dashboards
  • Vereinfachung der Eingabe durch vorgegebene Optionen
  • Einsatz in Prototypen mit schnellem Umschalten zwischen Modi

🖥️ Betriebssystem

iOS

📄 Codebeispiel

import SwiftUI

@main
struct SegmentedPickerApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

public struct ContentView: View {
    // Track the current selection
    @State private var selection = "Daily"
    
    // Options available in the segmented picker
    let options = ["Daily", "Weekly", "Monthly"]

    public init() {}

    public var body: some View {
        Picker("Frequency", selection: $selection) {
            // Generate segments for each option
            ForEach(options, id: \.self) { option in
                Text(option)
            }
        }
        // Style picker as segmented control
        .pickerStyle(.segmented)
        // Improve accessibility with a clear label
        .accessibilityLabel("Select Frequency")
        .padding()
    }
}

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