我需要将iOS中的几个按钮(UIButton
)组合在一起。如果单击任一按钮,则应使用按钮id调用单个函数,然后调用相应的处理程序。
我怎么能在iOS中这样做?我的研究表明UIView
可能就是答案。但如何在印刷机上自动调用相同的功能?
答案 0 :(得分:3)
是的,只需将它们全部绑定到同一个IBAction,它应该可以正常工作。所以在你的标题中创建 - (IBAction)buttonPushed:然后在IB中将所有按钮连接到同一个动作。
答案 1 :(得分:2)
-(void)buttonAction:(id)sender {
UIButton *btn = (UIButton*)sender; //We know sender will be a UIButton
switch (btn.tag) {
case 1: { /* do stuff for first button */ break; }
case 2: { /* do stuff for second button */ break; }
case 3: { /* do stuff for third button */ break; }
//Etc.
}
}
答案 2 :(得分:0)
您可以像这样添加多个按钮。
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn.frame = CGRectMake(10, 40, 50, 50);
[btn setTitle:@"Send" forState:UIControlStateNormal];
[btn setTag:1];
[btn addTarget:self action:@selector(sendBtnPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];
UIButton *btn1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn.frame = CGRectMake(10, 100, 50, 50);
[btn1 setTitle:@"YES" forState:UIControlStateNormal];
[btn1 setTag:2];
[btn1 addTarget:self action:@selector(sendBtnPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn1];
-(IBAction)sendBtnPressed:(id)sender
{
int tag = [(UIButton *) sender tag];
if(tag == 1)
{
}
else if (tag == 2)
{
}
}
答案 3 :(得分:0)
-(IBAction) buttonClicked:
在viewcontroller.h文件中创建IBAction,并使用此操作连接所有按钮。