반응형
Button에 buttonStyle을 지정하여 버튼을 누루고 있을때만 색상 변경
CustomButtonStyle 생성
struct CustomButtonStyle: ButtonStyle {
var textColor: Color
func makeBody(configuration: Self.Configuration) -> some View {
configuration.label
.padding(EdgeInsets(top: 10, leading: 20, bottom: 10, trailing: 20))
.foregroundColor(configuration.isPressed ? textColor : Color.red)
.background(configuration.isPressed ? Color.red : textColor)
.overlay(RoundedRectangle(cornerRadius: 8).stroke((configuration.isPressed ? textColor : Color.red), lineWidth: 5)) // 빨간색 선
.cornerRadius(8)
.animation(nil) // 애니메이션 효과 제거
// 누르고 있을때 블러 처리
//.background(configuration.isPressed ? Color.blue.opacity(0.7) : Color.blue)
// 적용시 버튼이 천천히 커졌다가 작아진다
//.animation(.spring())
//.scaleEffect(configuration.isPressed ? 2.0 : 1.0)
}
}
버튼 색성
struct ContentView: View {
var body: some View {
Button("Custom Button", action: {
// 버튼이 클릭되었을 때 수행할 동작
})
.buttonStyle(CustomButtonStyle(textColor: .yellow))
// 이 부분에서 커스텀한 버튼 스타일을 적용합니다.
}
}
반응형
'개발 > SWIFT 아이폰' 카테고리의 다른 글
SwiftUI RadioButton 생성 (0) | 2023.07.24 |
---|---|
SwiftUI TextField 수정중일때 Borderline 변경 (0) | 2023.07.24 |
SwiftUI KT 원 내비 호출 및 경로 안내 (0) | 2023.07.21 |
SwiftUI gradient 그라데이션 배경 설정 (0) | 2023.07.20 |
SwiftUI 바텀 네비게이션 TabView 만들기 (0) | 2023.07.20 |