SwiftUI Button

There are several ways to create a button. Here is the simplest form:

 Button("Press me"){ 
// action area 
        }

Action area where you will execute code while button is pressed. We can create simple counter app using Button and Text view:

import SwiftUI
struct ContentView: View {
    
    @State var count = 0
    
    var body: some View {
        
        Text("You pressed: \(count) times.")
        
        Button("Press me"){
            count += 1
        }
    }
}
#Preview {
    ContentView()
}

Output:

We can use Image, Text or both as Button label:

import SwiftUI
struct ContentView: View {
    
    @State var count = 0
    
    var body: some View {
        
        Text("You pressed \(count) times.")
        
        Button(action: {
            count += 1
        }, label: {
            Label("Press me", systemImage: "plus.circle.fill")
        })
    }
}
#Preview {
    ContentView()
}

Output:

You can style button as you need like:

 Button(action: {
            count += 1
        }, label: {
            Label("Press me", systemImage: "plus.circle.fill")
        })
        .foregroundColor(.white)
        .padding()
        .background(.blue)
        .cornerRadius(5)

Output:

Leave a Reply