[IOS 로드맵] Responder Chain

willis18·2021년 9월 27일
0

IOS 로드맵

목록 보기
17/109

Responder Chain


Responder Chain은 말처럼 responder의 연속적인 절차인데
responder에 대해 아래에 설명하고 그 responder가 적절한 작동위치까지 계속 다음 응답자 위치까지 계속 이동하는것을 의미합니다.
최종지까지 이동해도 작동하지 않으면 그 responder 메세지는 폐기됩니다.

여기서 Responder는 무엇?

@MainActor class UIResponder : NSObject
UIKit 앱의 이벤트 처리 백본을 구성합니다.
이벤트가 발생하면 UIKit는 처리를 위해 앱의 응답자 객체에 이벤트를 전달합니다.
터치이벤트, 모션이벤트, 원격제어 이벤트 및 press이벤트를 비롯한 여러 종류의 이벤트가 있습니다.

예를들어 터치 이벤트를 처리하기 위해 리스폰더는 touchesBegan(:with:), touchesMoved(:with:), touchesEnded(:with:), 그리고 touchesCancelled(:with:)

주어진 리스폰더가 이벤트를 처리하지않으면, 리스폰더 체인의 다음 이벤트로 해당 이벤트를 전달합니다

UIView는 UIResponder를 상속받고 있다는
UITextField도 UIControl을 상속받고 있지만, 이 UIControl이 UIResponder를 상속받고 있기 때문에 UITextField에서 위 리스폰더 체인 메소드들을 호출할 수 있는 것입니다
그래서 별도로 UIResponder를 프로토콜로 채택하지 않아도 우리는 자연스럽게 사용하고 있던 것 입니다.

출처 및 자세한 정보 : https://zeddios.tistory.com/538 [ZeddiOS]

0개의 댓글