Skip to main content

Einen pulsierenden Button

Im folgenden Beispiel wird ein pulsierender Kreis als Button angezeigt. Dabei wird der Button um 20% vergrößert und dann wieder verkleinert. Dieser ist auch zum Anklicken und kann mit einer Aktion belegt werden:

import SwiftUI

struct ContentView: View {
    @State private var isPulsing = false
    
    var body: some View {
        Button(action: {}) {
            Text("Klick mich")
                .font(.title)
                .padding(60)
                .background(Color.blue)
                .foregroundColor(.white)
                .clipShape(Circle())
                .shadow(radius: 10)
        }
        .scaleEffect(isPulsing ? 1.2 : 1.0)
        .animation(
            Animation.easeInOut(duration: 1)
                .repeatForever(autoreverses: true),
            value: isPulsing
        )
        .onAppear {
            isPulsing = true
        }
    }
}

#Preview {
    ContentView()
}