🍎
[SwiftUI]ButtonStyleでボタンのEnable確認方法
ソース
struct EnableButtonStyle: ButtonStyle {
func makeBody(configuration: ButtonStyle.Configuration) -> some View {
EnableButton(configuration: configuration)
}
struct EnableButton: View {
let configuration: ButtonStyle.Configuration
@Environment(\.isEnabled) private var isEnabled: Bool
var body: some View {
configuration.label.foregroundColor(isEnabled ? Color.green : Color.red)
}
}
}
解説
環境値Environmentの.isEnabledを使用すれば良いです。
Discussion