Apple がデリゲート パターンではなく UIButton のイベント処理にターゲット アクション デザイン パターンを使用することを決定した理由を理解するのに役立つ人はいますか?
または、Apple が UITextField の委譲デザイン パターンを選択する理由を説明できますが、同じことが Target Action でも達成できます。
Apple がデリゲート パターンではなく UIButton のイベント処理にターゲット アクション デザイン パターンを使用することを決定した理由を理解するのに役立つ人はいますか?
または、Apple が UITextField の委譲デザイン パターンを選択する理由を説明できますが、同じことが Target Action でも達成できます。
すべての@IBAction
関数には、3 つのシグネチャのいずれかがあります。
functionName() -> Void
functionName(sender: Any) -> Void
functionName(sender: Any, forEvent event: UIEvent) -> Void
IBAction は他の引数を受け入れることができず、値を返しません。
デリゲートを使用すると、さまざまなパラメーターを取り、値を返す関数を使用できますが、アクションはUIView
サブクラス全体の標準的なアプローチです。
などの一部のクラスではUITextField
、特定のアクションをデリゲート メソッドとアクション メソッドの両方で処理できます。これにより、いくつかの選択肢が得られると思います。デリゲート関数を既に実装している場合は、アクション ハンドラーも実装する必要はありません。