ios - 如何通过单击其他按钮取消选择图像?

标签 ios uibutton

您好,在我的应用程序中,我要求用户提供反馈。例如,这可能是对我们的服务器进行评级。他们通过点击两个按钮之一来做到这一点,好的或坏的。当他们选择一个选项时,按钮的图像会发生变化,这是我需要它做的。我遇到的问题是,如果他们选择好然后选择坏,则好按钮需要恢复到“未选择”选项。因为他们懒得被“选中”

我的按钮代码。

- (IBAction)gd:(id)sender {
    UIButton *btn = (UIButton *)sender;

    if ([sender isSelected]) {
        [btn setBackgroundImage:[UIImage imageNamed:@"rd.png"] forState:UIControlStateNormal];
        [sender setSelected:NO];
    }
    else{
        [sender setBackgroundImage:[UIImage imageNamed:@"rd1.png"] forState:UIControlStateNormal];
        [sender setSelected:YES];
    }
}

- (IBAction)bd:(id)sender {
    UIButton *btn1 = (UIButton *)sender;

    if ([sender isSelected]) {
        [btn1 setBackgroundImage:[UIImage imageNamed:@"rd.png"] forState:UIControlStateNormal];
        [sender setSelected:NO];
    }
    else{
        [sender setBackgroundImage:[UIImage imageNamed:@"rd1.png"] forState:UIControlStateNormal];
        [sender setSelected:YES];

    }
}

我已经使用了上面的,但它并没有像我希望的那样工作,如下图所示。

enter image description here

请告诉我如何解决这个问题。

最佳答案

为两个按钮创建一个 socket 并为两个状态设置图像。

- (void)initButtons {
   [gdBtn setBackgroundImage:[UIImage imageNamed:@"rd.png"] forState:UIControlStateNormal];
   [gdBtn setBackgroundImage:[UIImage imageNamed:@"rd1.png"] forState:UIControlStateSelected];
   [bdBtn setBackgroundImage:[UIImage imageNamed:@"rd.png"] forState:UIControlStateNormal];
   [bdBtn setBackgroundImage:[UIImage imageNamed:@"rd1.png"] forState:UIControlStateSelected];
}

操作应该如下所示:

- (IBAction)gd:(UIButton *)sender {
   [sender setSelected:!sender.isSelected];
   [bdBtn setSelected:NO];
}

- (IBAction)bd:(UIButton *)sender {
   [sender setSelected:!sender.isSelected];
   [gdBtn setSelected:NO];
}

关于ios - 如何通过单击其他按钮取消选择图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23237834/

相关文章:

iphone - UIButton 有问题不接受点击一半的区域....查看层次结构问题..?

ios - 在 XCode 中使用类似处理的 AWK

ios - 如何从 ShareKit 获取 Facebook ID

ios - 更改 UITextfield 输入的宽度

ios - Swift 中 UIButton 的异常行为

ios - 按钮作为 Swift 中滑动手势 Action 的参数

iOS8 改变动态单元格高度 "now",重新内部单元格内容

ios - 证书和临时资料问题

ios - 如何加载从 iMessage 收到的图像? [IOS 7]

ios - 我的自定义按钮在 iCarousel iOS 中没有获得点击?