SwiftUIでButtonを有効にしたり無効にしたりする


SwiftUIでButtonを有効にしたり無効にしたりする方法です。

SwiftUIでButtonを有効にしたり無効にしたりする

ContentView.swift

import SwiftUI

struct ContentView: View {
    @State var enable: Bool = true

    var body: some View {
        VStack {
            Toggle(isOn: $enable) {
                Text("isEnable: \(enable.description)")
            }

            Button {
                print("Tapped!!")
            } label: {
                Text("Tap Me!!(\(enable ? "Enable": "Disable"))")
                    .foregroundColor(Color.white)
                    .padding()
                    .background(enable ? Color.orange: Color(UIColor.lightGray))
            }
            .disabled(!enable)
        }.padding()
    }
}

#Preview {
    ContentView()
}