2011-12-26 41 views
0

我需要一个UIButton充当单选按钮(选择按钮)。当用户点击该按钮时,颜色应该改变(以指示用户 点击该按钮),并且当用户再次点击同一按钮(已经选择的按钮 )时,按钮的颜色应该改变为默认颜色指示 该按钮未被选中。添加一个UIButton

如何以编程方式执行此操作?

可能有其他替代方法可以做到这一点,但我需要使用按钮 来做到这一点。

+1

海事组织是一个“切换”...无线电当其他按钮关闭第一个按钮时。 – 2011-12-26 07:25:49

回答

1

将下面的代码放入您的按钮操作中。

if([btnName isSelected]) { 
    [btnName setImage:@"SelectedImage" forState:UIControlStateNormal]; 
    [btnName setSelected:NO]; 
} else { 
    [btnName setImage:@"deSelectedImage" forState:UIControlStateNormal]; 
    [btnName setSelected:YES]; 
} 

希望它会有用。

+0

你好Devang,我们可以有三种状态的UIButton,并在它们之间切换? – 2012-12-13 11:27:45

+0

@RahulGupta:你到底想做什么?告诉我一些细节。 – Devang 2012-12-13 12:24:46

+0

//制作一个按钮,它会在三种状态之间切换 //我已经这样做了。你有其他想法吗? (IBAction)btnPressed:(id)sender { UIButton * btn =(UIButton *)sender; 如果([btn.titleLabel.text isEqualToString:@“Yes”]) { [btn setTitle:@“No”forState:UIControlStateNormal]; } else if([btn.titleLabel.text isEqualToString:@“No”]) { [btn setTitle:@“StandBy”forState:UIControlStateNormal]; ([btn.titleLabel.text isEqualToString:@“StandBy”]) {0; 0; 0; 0; } } – 2012-12-13 12:31:20

3

您可以指定选择和正常按钮状态不同的图像:

[btnName setImage:selectedImage forState:UIControlStateSelected]; 
[btnName setImage:normalimage forState:UIControlStateNormal]; 

然后在按钮的操作方法简单地切换之间按钮的状态正常和选择:

- (void) buttonAction:(UIButton*)sender{ 
    sender.selected = !sender.selected; 
}