버튼 addTarget, addAction 선택 기준

임혜정·2024년 9월 12일
0
post-custom-banner

1. addTarget(_:action:for:)

  • iOS 2.0부터 사용한 오래된 메서드
  • Objective-C 런타임을 사용한다
  • 셀렉터(Selector)를 통해 메서드를 호출
  • 여러 개의 타겟과 액션을 추가할 수 있다
  • 주관적: 익숙해서 그런지 addAction보다 좀 더 편함
button.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside)

@objc func buttonTapped() {
    // 실행할 동작
}

2. addAction(_:for:)

  • iOS 14.0부터 도입된 메서드
  • Swift의 클로저를 사용
  • 타입 안전성이 보장된다
  • UIAction 객체를 사용하여 더 많은 컨텍스트 정보를 제공할 수 있다
button.addAction(UIAction { _ in
    // 실행할 동작
}, for: .touchUpInside)

선택 기준

  1. iOS14 이상을 타겟으로 하는 경우, 아예 새로운 프로젝트일 경우 addAction을 사용하는 것이 좋다.
  2. 14 이전 버전을 지원해야하는 경우와 이전부터 쌓여온 팀의 코딩 스타일 규칙이 있다면 addTarget을 사용하는게 일관성 면에서 좋다.

profile
오늘 배운걸 까먹었을 미래의 나에게..⭐️
post-custom-banner

0개의 댓글