ビュー上のUIButton
にすべてTouch Up Inside
ハンドラを使用する方法はありますか?または、Interface Builder
を使用して、すべてのボタンを同じデリゲートに設定することはできますか?複数のUIButtonを使用して1つのハンドラ(IB経由)を使用する
2
A
答えて
4
はい。コントロールは、通常の方法で最初のボタンをヘッダーファイルにドラッグし、アクションを作成します。 .xibファイルで、他の各ボタンをFile's Ownerに接続し、作成したのと同じアクションを選択します。
.xibファイルで、[表示]ペインの[属性インスペクタ]を確認します。各ボタンのタグは個別に設定できます。次に、次のコードを使用することができます...
- (IBAction)myButtons:(id)sender {
switch ([(UIButton *)sender tag]) {
case 0:
// code for first button
break;
case 1:
// code for second button
break;
case 2:
// code for third button
break;
default:
break;
}
}
2
はい、好きなだけ多くのボタンイベントに同じIBActionを添付できます。アクションを開始した実際のボタンは、IBActionの引数として渡されます。必要に応じて、そこで差別化することができます。
2
ターゲット/アクションと同じIBActionを複数のボタンから作成することは問題ありません。ただ、IB
で複数のものをバインドするプログラムによる同等である:
[button1 addTarget:self action:@selector(oneAction:) forControlEvents:UIControlEventTouchUpInside];
[button2 addTarget:self action:@selector(oneAction:) forControlEvents:UIControlEventTouchUpInside];
1
確かに、なぜ?コード内の各ボタンから同じIBActionメソッドにドラッグ&ドロップするだけです。しかし、そのメソッドは、すべてのボタンが同じことをしたくないと確信しているので、そのボタンがどれであるか、それが何をすべきかを決定する大量の文で構成する必要があります。
関連する問題
- 1. Javaを使用してSFTP経由で複数のファイルをダウンロード
- 2. 別のIBカスタムビューでmouseEntered/-Exitedを使用して1つのIBカスタムビューを制御する方法
- 3. DropZone.jsを使用して複数のファイルを1つずつアップロード
- 4. forminataを使用してfileinput、textinput、複数のチェックボックスをフォームデータを使用してjquery ajax経由で投稿
- 5. 1つのファイル(awk経由)から値を取得し、別のファイル(sed経由)で使用する
- 6. ソナタを使用して1つのサイトの複数のホスト
- 7. 1つのアプリケーション用に複数のデータベースを作成して使用する
- 8. jquery関数で複数のハンドラを使用する方法
- 9. 複数の方法で1つの整数を使用する
- 10. jqueryを使用して複数のフォームを1つずつ送信する
- 11. Haskellで1つのランダム変数を複数回使用する
- 12. 1つの「使用」で複数のモジュールを「使用する」方法
- 13. 複数の引用符をPythonを使用して1つの構文で
- 14. Splinterを使用して1つのページ上の複数のボタンをクリックする
- 15. 私は複数のオプションを使用して1つだけを選択するのに使用しますか?
- 16. Silverlight用のonLoadedハンドラをHTML経由で追加する
- 17. 1つのバットファイルを使用して複数のファイルを実行する
- 18. globを使用して複数のxmlファイルを1つのファイルにマージする
- 19. 1つのクエリを使用して複数のテーブルを作成する
- 20. 1つのデリゲートを使用して複数のメソッドを参照する
- 21. MATLABを使用して複数のファイルを1つのファイルにマージする
- 22. rxjavaを使用して複数のAPIエンドポイントを1つのストリームでポーリングする
- 23. soxを使用して1つのファイルを複数のファイルに連結する
- 24. 1つのイベントを使用してreduxで複数のajaxリクエストをトリガーする
- 25. ImageMagickを使用して複数のPNGを1つのPDFに結合する
- 26. ミュールドメインプロジェクトを使用して1つのミュールアプリケーションで複数のコネクタを処理する
- 27. 複数のルートファイルを使用して1つのBlueprintを構成する方法
- 28. hbm.xmlを使用して複数のクラスを1つのテーブルにマッピングする
- 29. 1つのフォームを使用して複数の行を更新する
- 30. 1つのクエリを使用して複数のデータベーステーブルを選択する方法
私はこの様式で、AndroidとFlashのiOSフォームに移行する人たちとかなり似ています。詳細については、私のポストを参照してください。 –