我有这个代码来控制两个复选框(自定义按钮):
- (IBAction) setCheckBox: (id) sender{
UIImage *selected = [UIImage imageNamed:@"checkbox_checked.png"];
UIImage *notSelected = [UIImage imageNamed:@"checkbox_unchecked.png"];
if ([sender isSelected])
{
[sender setImage:notSelected forState:UIControlStateNormal];
[sender setSelected:NO];
if ([sender tag] == 10) boolOne = FALSE;
if ([sender tag] == 11) boolTwo = FALSE;
}
else
{
[sender setImage:selected forState:UIControlStateSelected];
[sender setSelected:YES];
if ([sender tag] == 10) boolOne = TRUE;
if ([sender tag] == 11) boolTwo = TRUE;
}
}
您可以看到这段代码控制了两个复选框,当我按下一个复选框时,它会被选中,而当我按下另一次时,它会变为未选中状态。
现在我想以这种方式更改此代码: 默认情况下,带有标签 10 的复选框被选中,当我按下它时,我没有效果,但是当我按下带有标签 11 的复选框时,它应该被选中,而复选框 10 应该被取消选中。 复选框应该切换选择以及 bool 值
最佳答案
if([sender isSelected])
return;
if([sender tag] == 11){
[sender setSelected:YES];
[checkbox10 setSelected:NO];
}
if ([sender tag] == 10) {
[sender setSelected:YES];
[checkbox11 setSelected:NO];
}
你可以通过标签值获取复选框,就像我假设复选框是 uibutton 的实例一样
UIButton *checkBox10 = (UIButton*)[self.view viewWithTag:10];
希望你能理解。还根据代码设置图像。
关于objective-c - iOS:控制两个复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6691861/