UIControl은 iOS의 UIKit 프레임워크에서 제공하는 사용자 인터페이스
요소의 기본 클래스 중 하나입니다. 버튼, 스위치, 슬라이더 등과 같이
사용자 입력(터치, 드래그, 값 변경 등)에 반응하는 뷰의 기반
클래스입니다.\
UIView를 상속하고 있으며, 이벤트 처리와 상태 관리를 위한 기능을
제공합니다.
isEnabled, isSelected, isHighlighted 등의 상태UIControl은 다양한 상태를 가질 수 있습니다. - isEnabled: 컨트롤이
활성화되어 있는지 여부 - isSelected: 컨트롤이 선택되었는지 여부 -
isHighlighted: 컨트롤이 터치되었을 때 하이라이트 상태
UIControl은 여러 이벤트를 지원합니다. 대표적인 이벤트는 다음과 같습니다.
이벤트 상수 설명
.touchDown 사용자가 화면을 터치했을 때
.touchUpInside 터치 후 컨트롤 내부에서 손가락을 뗐을 때
.touchUpOutside 터치 후 컨트롤 외부에서 손가락을 뗐을 때
.valueChanged 값이 변경되었을 때 (예: UISwitch, UISlider)
.editingChanged 텍스트 입력 시 값이 바뀔 때
UIControl은 target-action 패턴을 통해 특정 이벤트가 발생했을 때
메서드를 호출할 수 있습니다.
let button = UIButton(type: .system)
button.setTitle("확인", for: .normal)
button.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside)
@objc func buttonTapped() {
print("버튼이 눌렸습니다.")
}
UIControl은 iOS에서 사용자와의 상호작용을 처리하는 핵심 클래스입니다.
이벤트와 상태 관리가 체계적으로 제공되며, target-action 패턴을 활용해
손쉽게 사용자 입력에 대응할 수 있습니다.