web-dev-qa-db-ja.com

Swift 3.0のセレクター構文

私はこの方法でボタンにターゲットを追加しようとしています:

btnAll.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside)

しかし、それは私にエラーを与えています:

未解決の識別子「buttonTapped」の使用

しかし、私は次のような関数を宣言しました:

func buttonTapped(sender: UIButton) {

    print("All Tapped")
}

Swift 3でこれを行う正しい方法は誰か教えてもらえますか。

50
Ram Mani

次のようなターゲットを追加します

これで#selector(buttonTapped(sender:))として記述されるか、#selector(buttonTapped(_:))を使用する必要があります

btnAll.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside)

次に、関数を次のように変更します。

@objc func buttonTapped(_ sender : UIButton){

 ....
 }
79
Anbu.Karthik

次の方法で実行できます。

btnAll.addTarget(self, action: #selector(buttonTapped(sender:)), for: .touchUpInside)
21
Dharmesh