我有4个按钮(b1,b2,b3,b4)和一个标签(实验室)。现在我想在按下一个特定按钮时在标签上显示按钮标题。我用四个(IBAction)方法做了一个每个按钮。但我想用1(IBAction)方法做。所以问题是如何识别按下哪个按钮???我知道一种类似“getBytitle”方法的方法。但我需要更好的解决方案。任何人都可以帮忙???我还需要回答有关如何识别段控制中的按钮的问题。高级回复。
答案 0 :(得分:7)
看一下IB,按钮属性的标签字段可能就是你要找的东西。使用不同的整数标记值设置要检测的每个按钮,然后将其IBActions设置为相同的方法。现在,您可以通过检查发件人
中的标记字段来检查按下了哪个按钮- (IBAction) buttonPressed: (id) sender
{
switch ( ((UIButton*)sender).tag ){
case 1:
<something>
break;
case 2:
<something else>
break;
default:
<default something>
}
}
答案 1 :(得分:3)
触发操作的按钮将作为发件人传递。您的方法可能看起来像这样:
- (IBAction) buttonPressed: (id) sender;
sender
是按钮,因此如果您想在标签中显示按钮标题,您只需要这样做:
- (IBAction) buttonPressed: (id) sender
{
label.text = [sender currentTitle];
}
应该是它。