How to add actions to alert buttons
About 2 min
How to add actions to alert buttons 관련
SwiftUI by Example
Back to Home
How to add actions to alert buttons | SwiftUI by Example
How to add actions to alert buttons
Updated for Xcode 15
Not needed from iOS 15 on – you should use buttons directly.
Basic SwiftUI alerts look like this:
Alert(
title: Text("Important message"),
message: Text("Wear sunscreen"),
dismissButton: .default(Text("Got it!"))
)
However, you will often want to attach actions to buttons to perform specific actions when they are tapped. To do that, attach a closure to your button that will be called when it’s tapped, like this:
struct ContentView: View {
@State private var showingAlert = false
var body: some View {
Button("Show Alert") {
showingAlert = true
}
.alert(isPresented:$showingAlert) {
Alert(
title: Text("Are you sure you want to delete this?"),
message: Text("There is no undo"),
primaryButton: .destructive(Text("Delete")) {
print("Deleting...")
},
secondaryButton: .cancel()
)
}
}
}
There is no way to add more than two buttons to an alert – if you’re looking to do that you should use an action sheet instead.
Similar solutions…
Presenting an alert | SwiftUI by Example
Presenting an alert
How to add a TextField to an alert | SwiftUI by Example
How to add a TextField to an alert
How to show an alert | SwiftUI by Example
How to show an alert
How to add custom swipe action buttons to a List row | SwiftUI by Example
How to add custom swipe action buttons to a List row
How to create a toolbar and add buttons to it | SwiftUI by Example
How to create a toolbar and add buttons to it