Swift로 멋있어요. 두 번째 파라미터 Delegate 방법이 없다는 선언.

2587 단어 iOSSwift
스스로 딜게이트를 선언할 때, 두 번째 매개변수가 있을 때 그렇게 선언하겠죠.
protocol CustomViewDelegate: class {
  func customView(_ sender: CustomView, didTapSaveButton: UIButton)
}
하지만 두 번째 파라미터가 없으면 이렇게 되기 쉽다.촌스러웠지만 이렇게 선언했다.
protocol CustomViewDelegate: class {
  func customViewDidDismiss(_ sender: CustomView)
}
iOS SDK의 UItable View DataSource에서 본 노력의 느낌.
func numberOfSections(in tableView: UITableView) -> Int
하지만 영어를 못하는 아저씨에게 떠오르지 않는 아이디어는...하지만 이런 아이디어는 Objective-C 시대의 잔류에 불과하다!
스위프트면 이렇게 써도 돼요.
protocol CustomViewDelegate: class {
  func customView(_ sender: CustomView, didDismiss: ())
}
부를 때 이렇게.
delegate?.customView(self, didDismiss: ())
느낌이 좋다.참고로 매개 변수가 없는 init 방법이 여러 개 있을 때도 사용할 수 있습니다.

좋은 웹페이지 즐겨찾기