1
私は機能を持っていなくて
UIButtonにaddTargetする方法...送信者
私NewButtonを作成するときに、私は接続func MyFunc (_ sender: AnyObject) {
let n = sender.tag! //do stuff with 'n'
}
...
NewButton.addTarget(self, action: #selector(Main.MyFunc(_:)), for: .touchUpInside)
私は呼びたいと思います私のコードの他の領域には、送信者なしでMyFunc
があります。送信者を使わずにボタンに.addターゲットを設定することは可能ですか?
ような....
NewButton.addTarget(self, action: #selector(Main.MyFunc(n: 5)), for: .touchUpInside)
と...
func MyFunc (n: Int) {
//do stuff with 'n'
}
私は一つの解決策のようなルーティング機能だろう知っている...
func router (_ sender: AnyObject) {
MyFunc(n: sender.tag!)
}
しかし、よりエレガントな方法があるのだろうかと思っています。
何ですか?なぜパラメータとしてボタンを渡すだけではないのですか?そして、はい、送信者なしでターゲットを作成することができます。ただ引数を入れないでください。接続すれば、あなたはストーリーボードを介していることを意味し、それから送信者がいるはずだと思います。 – Brandon