2015-02-09 57 views
0

我在表格視圖單元格中有三個按鈕圖像,我想檢查它們之間的條件。當我點擊按鈕1意味着按鈕3不應該工作。下一個條件按鈕3點擊意味着按鈕1不應該工作。按鈕2可以在所有條件下進行選擇。如何檢查UIButton圖像條件

ButtonImageSelected = [UIImage imageNamed:@"lblue.png"]; 
ButtonImage = [UIImage imageNamed:@"l.png"]; 
button1 = [UIButton buttonWithType:UIButtonTypeCustom]; 
button1.frame = CGRectMake(80, 27, 36, 36); 
[button1 setBackgroundImage:ButtonImage forState:UIControlStateNormal]; 
button1.tag = 1; 
[button1 setBackgroundImage:ButtonImageSelected forState:UIControlStateSelected]; 
[cell.contentView addSubview:button1]; 

ButtonImageSelected1 = [UIImage imageNamed:@"eblue.png"]; 
ButtonImage1 = [UIImage imageNamed:@"e.png"]; 
button2 = [UIButton buttonWithType:UIButtonTypeCustom]; 
button2.frame = CGRectMake(160, 27, 36, 36); 
button2.tag = 2; 
[button2 setBackgroundImage:ButtonImage1 forState:UIControlStateNormal]; 
[button2 setBackgroundImage:ButtonImageSelected1 forState:UIControlStateSelected]; 
button2.userInteractionEnabled = YES; 
[button2 addTarget:self action:@selector(select_id:)forControlEvents:UIControlEventTouchDown]; 
[cell.contentView addSubview:button2]; 

ButtonImageSelected2 = [UIImage imageNamed:@"vblue.png"]; 
ButtonImage2 = [UIImage imageNamed:@"v.png"]; 

button3 = [UIButton buttonWithType:UIButtonTypeCustom]; 
button3.frame = CGRectMake(240, 27, 36, 36); 
button3.tag = 3; 
[button3 setBackgroundImage:ButtonImage2 forState:UIControlStateNormal]; 
[button3 setBackgroundImage:ButtonImageSelected2 forState:UIControlStateSelected]; 
[button3 addTarget:self action:@selector(select_id:)forControlEvents:UIControlEventTouchDown]; 
[cell.contentView addSubview:button3]; 

-(void)select_id:(UIButton *) tempBtn { 
    if (tempBtn.tag == 1) { 
     [tempBtn setSelected:YES]; 
     [button1 setBackgroundImage:ButtonImageSelected forState:UIControlStateSelected]; 
     [button2 setBackgroundImage:ButtonImageSelected1 forState:UIControlStateSelected]; 
     [button3 setBackgroundImage:ButtonImage2 forState:UIControlStateNormal]; 
     [tempBtn setSelected:! tempBtn.selected]; 
    } 
} 
+0

請把問題弄清楚。你的編碼也不能理解。你的要求是什麼? – 2015-02-09 07:26:09

+0

我想檢查三個按鈕之間的條件。 'select_id'方法中的 – 2015-02-09 07:38:10

+0

檢查按鈕標記並禁用您不想執行的按鈕。 – 2015-02-09 11:24:24

回答

0

從上面的代碼.....

ü沒有設置按鈕1 .. 設置Button1的目標的目標那就試試吧

希望它會工作...

+0

我錯過了添加這個堆棧,但在我的編碼中,我也設置了按鈕1的目標。 – 2015-02-09 07:41:38

0

您需要爲所有3添加一個選擇器,您可以添加一個額外的方法,用於在所有三個選擇器中使用的所有常用過程。在這些選擇器中,您要麼將button.enabled = true;button.enabled = false;

作爲示例,這裏是按鈕1選擇器。

-(void)button1Selector: (id)selector { 
    button3.enabled = false; 
    [self doOtherStuff]; 
}