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

Posted

技术标签:

【中文标题】如何更改多个按钮图像和条件【英文标题】:how to change multiple button image and conditions 【发布时间】:2015-03-03 05:53:38 【问题描述】:

我在表视图单元中有两个按钮,当我单击第1个按钮时,背景图像更改为所选图像,同时我的第2张按钮图像不应改变第1按钮时。我该怎么做这个过程。

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 新手。

【问题讨论】:

对 2 个按钮使用不同的按钮操作方法。您正在使用相同的按钮操作。在第一个按钮操作中更改 btn1 的背景图像。 @RJV 你能帮我写代码吗 【参考方案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 
    

【讨论】:

if ([button1 isSelected]) [button setImage:[UIImage imageNamed:@"l.png"] forState:UIControlStateNormal]; NSLog(@"选择"); [button1 setSelected:NO]; else [button setImage:[UIImage imageNamed:@"lblue.png"] forState:UIControlStateSelected]; NSLog(@"不选择"); [button1 setSelected:YES];我试过这个按钮 1 图像没有改变为什么? 代替 setImage 使用 setBackgroundImage..因为你有使用 isSelected 不使用被选中。只需使用按钮的标签

以上是关于如何更改多个按钮图像和条件的主要内容,如果未能解决你的问题,请参考以下文章

如何动态更改自定义 UIButton 图像

如何在 Swift3 中更改一组按钮图像的颜色?

如何在单击按钮操作时更改图像

在swift UI中点击按钮时如何更改背景颜色和图像?

如何使用导航抽屉打开和关闭更改按钮图像

如何使用 javascript 和按钮更改图像的不透明度?