gpt4 book ai didi

ios - 如何取消选择单选按钮(UIButton)的先前状态

转载 作者:行者123 更新时间:2023-11-29 05:39:43 26 4
gpt4 key购买 nike

我在 ScrollViewController 中有一个 Scrollview,并且在另一个 ViewController(RadioViewController) 中创建了单选按钮。这是我在 RadioViewController 中创建单选按钮的代码:

- (void)setupBtn{

self.radioBtn = [UIButton buttonWithType: UIButtonTypeCustom];
[self.radioBtn setFrame:CGRectMake(40,38,18,18)];
[self.radioBtn setImage: [UIImage imageNamed:@"radio-button"]forState:UIControlStateNormal];
[self.radioBtn setImage: [UIImage imageNamed:@"radio-button-select"]forState: UIControlStateSelected];
[self.radioBtn addTarget:self action:@selector(radioButtonTapped:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:self.radioBtn];
}
- (void)radioButtonTapped:(UIButton*)sender{
NSLog(self.radioBtn.isSelected? @"Yes" : @"No");

if (self.radioBtn.isSelected) {
[self.radioBtn setSelected:NO];
self.view1.backgroundColor =[UIColor clearColor];
[self.radioBtn setImage:[UIImage imageNamed:@"radio-button"] forState:UIControlStateSelected];
}else {
[self.radioBtn setSelected:YES];
self.view1.backgroundColor = [UACFCustomColors continentalLightBlueTransparent];
[self.radioBtn setImage:[UIImage imageNamed:@"radio-button-select"] forState:UIControlStateSelected];

}


}

我总是得到 self.radioBtn.isSelected = NO;

当我选择一个单选按钮时,如果选择了任何其他单选按钮,如何将这些单选按钮状态设置为“否”?

最佳答案

将您的代码更改为以下代码。

BOOL radioButtonClicked;

-(void)setupBtn{
self.radioBtn = [UIButton buttonWithType: UIButtonTypeCustom];
[self.radioBtn setFrame:CGRectMake(40,38,18,18)];
[self.radioBtn setImage: [UIImage imageNamed:@"radio-button"]forState:UIControlStateNormal];
[self.radioBtn setImage: [UIImage imageNamed:@"radio-button-select"]forState: UIControlStateSelected];
[self.radioBtn addTarget:self action:@selector(radioButtonTapped:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:self.radioBtn];
radioButtonClicked = YES; // Add a boolean flag and set to YES
}

-(void)radioButtonTapped:(UIButton*)sender{
NSLog(self.radioBtn.isSelected? @"Yes" : @"No");

if (radioButtonClicked) {
radioButtonClicked = NO;
self.view1.backgroundColor =[UIColor clearColor];
[self.radioBtn setImage:[UIImage imageNamed:@"radio-button"] forState:UIControlStateSelected];
}
else {
radioButtonClicked = YES;
self.view1.backgroundColor = [UACFCustomColors continentalLightBlueTransparent];
[self.radioBtn setImage:[UIImage imageNamed:@"radio-button-select"] forState:UIControlStateSelected];

}
}

关于ios - 如何取消选择单选按钮(UIButton)的先前状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56678859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com