如何更改多个按钮图像和条件

时间:2015-03-03 05:53:38

标签: ios objective-c uitableview uiimageview uibutton

我在表格视图单元格中有两个按钮,当我单击第一个按钮时,背景图像变为所选图像,同时当选择第一个按钮时,我的第二个按钮图像不应该改变。我该怎么办呢。

UIButton *button1 = [UIButton buttonWithType:UIButtonTypeCustom];
button1.frame = CGRectMake(80, 27, 36, 36);
[button1 setImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"l"ofType:@"png"]] forState:UIControlStateNormal];
 button1.tag = 1;
[button1 addTarget:self action:@selector(radiobtn:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:button1];

  UIButton *button2 = [UIButton buttonWithType:UIButtonTypeCustom];
button2.frame = CGRectMake(160, 27, 36, 36);
[button2 setImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"e"ofType:@"png"]] forState:UIControlStateNormal];
   button2.tag = 2;
[button2 addTarget:self action:@selector(radiobtn:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:button2];


- (void)radiobtn:(UIButton *)button
{

}

这些按钮位于表格视图单元格中,第一个按钮选择图像名称=蓝色图像。 第二个按钮选择图像名称=红色图像。请帮助我,我是IOS的新手。

1 个答案:

答案 0 :(得分:1)

请使用不同的选择器并在不同的功能中执行代码。现在您只使用了一种方法,即。 radiobtn:(UIButton *){}

或者,如果您想保留相同的选择器,那么您可以检查单击哪个按钮并相应地执行代码

-(void)radiobtn:(UIButton *)button
{
     if(button.tag==1)
    {
    // perform the code when button 1 is clicked and change the images accordingly
    }
    else
    {
    // perform the code when button 2 is clicked 
    }
}