UISegmentedControl은 iOS 앱에서 여러 옵션 중 하나를 선택할 수 있도록 하는 UI 컴포넌트입니다. 여러 개의 세그먼트로 구성되어 있으며, 사용자는 이 중 하나를 선택할 수 있습니다.
선택형 인터페이스: 탭 버튼처럼 동작하며 여러 옵션 중 하나만 선택 가능
시각적 구분: 각 세그먼트는 명확하게 구분되어 표시됨
유연한 구성: 텍스트, 이미지 또는 둘 다를 세그먼트에 표시 가능

let segmentedControl = UISegmentedControl(items: ["하루", "일주일", "한 달"])
items: 항목 배열 ([String])
selectedSegmentIndex: 현재 선택된 인덱스 (0부터 시작)
| 속성/메서드 | 설명 |
|---|---|
| selectedSegmentIndex | 현재 선택된 인덱스 (Int) |
| insertSegment(withTitle:at:animated:) | 세그먼트 항목 추가 |
| removeSegment(at:animated:) | 항목 제거 |
| setTitle(_:forSegmentAt:) | 특정 인덱스에 제목 설정 |
| titleForSegment(at:) | 해당 인덱스의 제목 가져오기 |
| numberOfSegments | 항목개수 |
// 선택된 세그먼트 인덱스
segmentedControl.selectedSegmentIndex = 1
// 배경색 및 틴트 컬러
segmentedControl.backgroundColor = .systemGray5
segmentedControl.tintColor = .systemBlue
// 세그먼트 제목 설정
segmentedControl.setTitle("변경된 제목", forSegmentAt: 0)
// 세그먼트 이미지 설정
segmentedControl.setImage(UIImage(systemName: "star"), forSegmentAt: 1)
// 세그먼트 너비 설정
segmentedControl.setWidth(100, forSegmentAt: 0)]
segmentedControl.addTarget(self, action: "action:", forControlEvents: .valueChanged)
https://developer.apple.com/documentation/uikit/uisegmentedcontrol