HIT해
[iOS/SwiftUI] Enum CaseIterable 적용해보기 본문
728x90
https://developer.apple.com/documentation/swift/caseiterable
CaseIterable | Apple Developer Documentation
A type that provides a collection of all of its values.
developer.apple.com
enum으로 얼굴 상태들을 선언해주고 바꿀 수 있는 버튼을 만들어보자!
1. enum 선언
enum Face : String,CaseIterable {
case sparkle
case sosim
case saechim
case nareun
case meong
case cupid
case bboombboom
case balral
case chic
}
CaseIterable 프로토콜로 선언을 해주어야 allCases를 활용해 배열처럼 사용할 수 있고
String 프로토콜을 사용해야 case 값을 사용할 수 있다.
2. ForEach 버튼 생성하기
HStack {
ForEach(Face.allCases, id: \.self) { face in
Button(action: {
selectedFace = face
print("selected : ", selectedFace)
}) {
Text("\(face.rawValue.capitalized)")
}
}
}
이렇게 만들어주면 Button을 일일히 만들 필요도 없으며 Enum case 명을 제대로 선언해주면 모든 가독성과 유지보수성이 향상되게된다!
'Swift > Swift 개발 노트' 카테고리의 다른 글
[iOS/SceneKit] 특정 노드만 남기고 보이게 만들기 (0) | 2024.08.21 |
---|---|
[iOS/SwiftUI] TCA Sheet 구현하기 (0) | 2024.08.20 |
[iOS/SceneKit] updateUIView가 실행이 안돼요 - 2 (0) | 2024.08.20 |
[iOS/Swift] updateUIView 가 실행되지 않아요. (0) | 2024.08.20 |
[iOS/SceneKit] SceneView dae 파일 불러오기 (0) | 2024.08.19 |