Skip to main content

Skalierender Button mit ButtonStyle

Beschreibung

Diese View zeigt einen Button mit einer benutzerdefinierten ButtonStyle-Implementierung, die eine Skalierungsanimation beim Drücken ausführt. Dadurch wirkt die Interaktion dynamischer und vermittelt dem Nutzer visuelles Feedback.

🔍 Zweck

  • Verbesserung der Nutzerinteraktion durch visuelles Feedback beim Drücken
  • Erstellung von konsistenten Buttons mit einheitlichem Verhalten
  • Demonstration einer benutzerdefinierten ButtonStyle in SwiftUI
  • Grundlage für animierte Buttons in komplexeren UI-Designs
  • Anpassung des Standard-Buttonverhaltens für moderne App-Designs

🖥️ Betriebssystem

iOS

📄 Codebeispiel

import SwiftUI

// Custom button style that scales down when pressed
struct CustomScalingButton: ButtonStyle {
    func makeBody(configuration: Configuration) -> some View {
        configuration.label
            // Scale down when pressed
            .scaleEffect(configuration.isPressed ? 0.95 : 1.0)
            // Animate scaling effect with spring animation
            .animation(.spring(), value: configuration.isPressed)
    }
}

struct ScalableButtonExample: View {
    var body: some View {
        // Simple button using the custom scaling style
        Button("Tap Me") {
            print("Tapped")
        }
        .buttonStyle(CustomScalingButton())
        .padding()
    }
}

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