我有一个包含五个不同UIbutton
实例的表单。当我按下一个按钮时,我必须显示不同的选项,所以我的问题是,我怎么知道我用同一个按钮按下了哪个按钮UIView
?我不想创建五个 UIView。可以给按钮一个ID吗?
问问题
111 次
3 回答
1
正如@Florent 指出的那样,您可以使用标签。但即使是这种复杂性也不需要 - 您可以直接比较按钮对象本身。
- (void)buttonClicked:(UIButton *)sender
{
if (sender == button1) {
// button 1 clicked
} else if (sender == button2) {
// etc.
}
}
于 2012-09-02T09:47:40.790 回答
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 回答
0
尝试这个...
(IBAction)nextHipoacusia:(id)sender
{
int currentSender = ((UIButton *)sender).tag;
}
于 2012-09-02T12:03:31.870 回答