如何获取值按钮复选框

时间:2017-04-12 11:00:16

标签: ios objective-c

我有一个复选框按钮,我在代码中设置了一个动作:

- (IBAction)check1:(id)sender {
if (!chaked) {
    [check1 setImage:[UIImage imageNamed:@"checkbox-checked.png"] forState:UIControlStateNormal];
     NSLog(@"Unchecked");
    chaked = YES;
} else if (chaked) {
    [check1 setImage:[UIImage imageNamed:@"checkbox.png"] forState:UIControlStateNormal];
    NSLog(@"checked");
    chaked = NO;
}

如何获取日志结果?

1 个答案:

答案 0 :(得分:1)

使用UIButton代替id。如果您确定此操作仅由UIButton个对象调用,则会更容易。

无论如何,UIButton将其值存储在selected属性中,可以使用isSelected getter检索该属性。但是,如果您使用IUButton创建了复选框,则可能还需要使用[sender setSelected:![sender isSelected]];

以编程方式选中/取消选中它

更新:注意到您想要更改图像,如果它已被选中。相反,请在viewDidLoad中调用它:

[check1 setImage:[UIImage imageNamed:@"checkbox-checked.png"] forState:UIControlStateSelected];
[check1 setImage:[UIImage imageNamed:@"checkbox.png"] forState:UIControlStateNormal];

这是你的IBAction:

- (IBAction)check1:(UIButton*)sender 
{
    [sender setSelected:![sender isSelected]];

    if (sender.isSelected == false) {
        NSLog(@"Unchecked");
    } 
    else {
        NSLog(@"checked");
    }
}