【发布时间】:2011-08-18 01:51:27
【问题描述】:
我需要创建两个单选按钮,并且我想将状态值(启用或禁用)存储在一个数组中。有人可以分享代码吗?
【问题讨论】:
-
iOS 提供的组件是 UISwitch 而不是单选按钮。
标签: iphone objective-c ios4
我需要创建两个单选按钮,并且我想将状态值(启用或禁用)存储在一个数组中。有人可以分享代码吗?
【问题讨论】:
标签: iphone objective-c ios4
这个怎么样
在头文件中取一个可变字典
NSMutableDicionary *dictionaryForRadioStates;
并在实施中
在实现文件中点击单选按钮
[dictionaryForRadioStates setObject:[NSNumber numberWithBool:radioButton.enabled] forKey:@"radioButton1"];
[dictionaryForRadioStates setObject:[NSNumber numberWithBool:radioButton.enabled] forKey:@"radioButton2"];
你可以像这样取回值
BOOL state = [[dictionaryForRadioStates valueForKey:@"radioButton1"] boolValue];
【讨论】:
这是使用单选按钮的完整代码:(您需要使用自定义按钮来执行此任务)
在 .h 文件中:
//Option Menu Buttons
IBOutlet UIButton *option1;
IBOutlet UIButton *option2;
-(IBAction)MyCustomRadioButtons:(id)sender; // Give connection to this method through Xib/code .
.m 文件
-(IBAction)MyCustomRadioButtons:(id)sender
{
if(sender==option1)
{
if([option1 isSelected]==TRUE)
{
[option1 setImage:[UIImage imageNamed:@"deselected.png"] forState:UIControlStateNormal];
option1.selected=FALSE;
[option2 setImage:[UIImage imageNamed:@"selected.png"] forState:UIControlStateSelected];
option2.selected=TRUE;
}
else {
[option1 setImage:[UIImage imageNamed:@"selected.png"] forState:UIControlStateSelected];
option1.selected=TRUE;
[option2 setImage:[UIImage imageNamed:@"deselected.png"] forState:UIControlStateNormal];
option2.selected=FALSE;
}
}
if(sender==option2)
{
if([option2 isSelected]==TRUE)
{
[option2 setImage:[UIImage imageNamed:@"deselected.png"] forState:UIControlStateNormal];
option2.selected=FALSE;
[option1 setImage:[UIImage imageNamed:@"selected.png"] forState:UIControlStateSelected];
option1.selected=TRUE;
}
else {
[option2 setImage:[UIImage imageNamed:@"selected.png"] forState:UIControlStateSelected];
option2.selected=TRUE;
[self ShowActionSheetWithPicker:sender];
[option1 setImage:[UIImage imageNamed:@"deselected.png"] forState:UIControlStateNormal];
option1.selected=FALSE;
}
}
}
以下是要使用的图片:
就存储而言,您可以使用 Dictionary 通过 key Values 来存储值。
希望这将有助于编写代码。
【讨论】: