WooKoo Blog

물과 같이

개발/개발

iOS - Target - Action 디자인 패턴

WooKoo 2020. 9. 15. 15:39

Target - Action 디자인패턴

 

Target - Action은 객체에 이벤트가 발생했을 때 다른 객체에 메세지를 보내는데 필요한 정보를 포함한다.

액션은 특정 이벤트가 발생할 때 호출되는 메소드를 의미한다.

타깃은 프레임워크 객체를 포함한 모든 객체가 될 수 있으나 보통은 컨트롤러가 되는경우가 일반적이다.

 

EX)

Button이 눌렀을 때(액션) 이를 호출할 ViewController객체(타깃)이 된다.

 

액션메서드

액션 메서드의 양식은 다들 아실거라고 생각이 됩니다.

보통 이런식의 인터페이스 빌더를 사용하지오?

@IBAction func actionMethod(_ sender: Any) { 

}

 

self.datePicker.addTarget(self, action: #selector(self.didDataPickerValueChanged(_:)), for UIControl.Event.valueChanged)

 

이 예시를 보면

addTarget을 사용해서 타겟을 설정해주죠?

 

첫번째 파라미터는 누가 이 액션을 처리해주느냐에요 self.라 함은 뷰 컨트롤러겠지요?

다음 무엇을 수행하는지는 action쪽에 있네요 밸류 값을 바꾼다는거 같아요

 

마지막 for는 어떠한 상황이 발생했냐에요

UIControl,Event, valueChanged가 발생했을 때 값을 바꿔준다는 의미로 타겟은 self겠죠!!?

 

출처

etst.tistory.com/94