2013-05-15 62 views
0

我需要將iOS中的多個按鈕(UIButton)分組在一起。如果任何一個按鈕被點擊,應該使用按鈕ID調用一個函數,然後調用相應的處理程序。作爲一個iOS的多個按鈕

我該如何在iOS中做到這一點?我的研究表明,UIView可能是答案。但如何自動呼叫新聞上的相同功能?

+0

看到我的答案與這個答案,你可以在視圖上添加多個按鈕。 –

回答

3

是的,只是將它們全部綁定到相同的IBAction,它應該工作正常。所以在你的頭文件中創建 - (IBAction)buttonPushed:然後在IB中將所有按鈕連接到同一個動作。

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) 
     { 
     } 
    } 
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. 
    } 
} 
0
-(IBAction) buttonClicked: 

在viewcontroll.h文件創建IBAction爲與此動作連接您的所有按鈕。