[SwiftUI] 버튼 활성 / 비활성 처리하기
- 언어/스위프트 UI
 - 2024. 2. 22.
 
스위프트 UI 버튼 비 활성화
스위프트 UI 에서 버튼을 비 활성화는 disabled(_:) modifier를 사용해 변경할 수 있습니다. boolean 값을 가지며 true 일 경우 disabled 상태가 되며 반대인 false 일 때는 enabled 상태가 됩니다. (false 값이 기본값)
비 활성일 경우 버튼의 색상이 Gray 색으로 변경됩니다.
var body: some View {
  VStack {
    Button("비 활성 버튼") {
      
    }
    .disabled(true)
    
    Button("활성 버튼") {
      
    }
    .disabled(false)
  }
  .font(.title)
}

활용 예제
다음 예제에서는 두 개의 컨트롤이 있습니다. TextField 에 값이 비어 있다면 그 값을 참조하는 name을 바인딩 한 버튼이 비활성 됩니다. 반대로 텍스트의 입력이 시작되면 버튼이 활성화됩니다.
@State var name: String = ""
var body: some View {
  VStack {
    TextField("이름을 입력하세요.", text: $name)
      .textFieldStyle(.roundedBorder)
      .padding()
    
    Button("저장") {
      print("저장 완료")
    }
    .disabled(name.isEmpty)
  }
}


'언어 > 스위프트 UI' 카테고리의 다른 글
| [SwiftData] SwiftUI 프리뷰(Preview) 안될 때 처리방법 (0) | 2024.04.04 | 
|---|---|
| [SwiftUI] 스위프트 UI가 Struct를 사용하는 이유 (0) | 2024.02.24 | 
| [SwiftUI] ScrollView 중앙에 위치 시키기 (0) | 2024.02.16 | 
| [SwiftUI] ScrollView 스크롤 오프셋 값 PreferenceKey 통해서 가져오기 (0) | 2024.02.15 | 
| [SwiftUI] URLSession 통신 await async JSON 데이터 로딩 처리하기 (0) | 2024.01.18 |