SwiftUI Buttonfarbe ändern?
Hey,
ich bin aktuell bei meinem ersten SwiftUI Projekt … dabei hätte ich gerne zwei Buttons und je nachdem welchen Button ich zuletzt gedrückt habe, der soll grün sein, der andere grau.
Dazu habe ich bisher noch nichts gefunden … ist wahrscheinlich aber ganz einfach.
Schonmal vielen Dank 🙏 und ich freue mich über jede Rückantwort
Umtiti011
1 Antwort
Vom Beitragsersteller als hilfreich ausgezeichnet
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Programmieren & Softwareentwicklung, Software & Apps
Da gibt es viele Wege. Ein ganz einfaches Beispiel ginge so:
import SwiftUI
enum ButtonState {
case none
case button1
case button2
}
struct ContentView: View {
@State var buttonState: ButtonState = .none
var body: some View {
HStack(alignment: .center, spacing: 32) {
Button("Button 1") {
buttonState = .button1
}
.foregroundColor(.white)
.padding()
.background(buttonState == .button1 ? .green : .gray)
.cornerRadius(9)
Button("Button 2") {
buttonState = .button2
}
.foregroundColor(.white)
.padding()
.background(buttonState == .button2 ? .green : .gray)
.cornerRadius(9)
}
}
}
So sieht das dann aus:
Natürlich sollte man dann später mit speziellen ButtonStyles arbeiten für das Beispiel wäre das zu viel.
Woher ich das weiß:Berufserfahrung – Entwickle Anwendungen für iOS, iPadOS und macOS beruflich.

Perfekt … vielen Dank … wird gleich mal ausprobiert :)