2011-05-19 16 views
2

私は多くのボタン(動的に生成)を含むアプリケーションを構築しています。すべてのボタンは、同じ機能を実行する必要があります。私の質問は、正しいジョブを実行するために、関数が呼び出されたときにどのボタンが押されたかを知る方法です。複数のuibuttonが目的関数cで同じ関数を実行する

答えて

1

アクションメッセージをアクションハンドラに送信するボタンインスタンスは、ハンドラに渡されるsenderパラメータになります。これを保存したボタンインスタンスと比較するだけです。

また、やや弱く、UIViewのtagフィールド(スーパークラスUIButton)を使用してボタンを区別し、senderというタグを確認してください。

+1

私はあなたのためにそれを書かずに与えることができるより明確なものは何もわかりません。アクションメソッドが呼び出されたときに、各ボタンに対して 'sender'を比較するだけで、押されたものを見つけることができます(このコメントは、著者が解説を求めて削除したコメントへの返信です)。 –

1

実行されている機能のタグで送信者を識別してみてください。そうすれば、どのボタンが押されたのか知ることができます。ボタンを動的に生成する瞬間にタグを割り当てることができます。

オプションで、NSDictionaryを使用して、生成されているすべてのボタンタグまたは配列を保存し、それに応じて使用することができます。

+0

任意の明確化?なぜなら、私はそれをどうやって作るのかわからないので、私の考えでこのアイデアを持っているからです:( –