0

UIbutton5 つの異なるインスタンスを持つフォームがあります。1つを押すと、さまざまなオプションを表示する必要があるため、同じボタンを使用してどのボタンを押したかを知るにはどうすればよいUIViewですか? 5 つの UIView を作成したくありません。ボタンにIDを付与することは可能ですか?

4

3 に答える 3

1

この方法で各 UIButton にタグを割り当てることができます。

[button setTag:4] 

または、UIButton の View 属性の Interface Builder で設定できます。

次に、 IBAction で:

- (IBAction)message:(id)sender 
{
  int currentSender = [sender tag];
  switch(currentSender) {
  // Different actions
  }
}
于 2012-09-02T09:34:47.643 に答える
1

@Florent が指摘したように、タグを使用できます。しかし、この複雑さは必要ありません。ボタン オブジェクト自体を直接比較できます。

- (void)buttonClicked:(UIButton *)sender
{
    if (sender == button1) {
        // button 1 clicked
    } else if (sender == button2) {
        // etc.
    }
}
于 2012-09-02T09:47:40.790 に答える
0

これを試して...

(IBAction)nextHipoacusia:(id)sender
 { 
  int currentSender = ((UIButton *)sender).tag;
 }
于 2012-09-02T12:03:31.870 に答える