我刚接触Objective-C,所以主要使用Storyboard。请问有人能告诉我如何在iOS中使用Xcode创建一个复选框
吗?
UISwitch
是 iOS 中用于指示开/关、选中/未选中状态的标准控件。为什么不使用它呢?
UISwitch是IOS应用中用于进行二进制选择的标准控件,但如果您想使用复选框,可以创建一个UIButton。
@property (weak, nonatomic) IBOutlet UIButton *CheckBox;
- (IBAction)CheckBoxClick:(id)sender
并在UIButton的点击事件中更改其背景图像
- (IBAction)CheckBoxClick:(id)sender {
if(!checked){
[_CheckBox setImage:[UIImage imageNamed:@"checked.png"] forState:UIControlStateNormal];
checked = YES;
}
else if(checked){
[_CheckBox setImage:[UIImage imageNamed:@"unchecked.png"] forState:UIControlStateNormal];
checked = NO;
}
}
此外,您可以在以下链接中找到更详细的答案:
如果您不想使用图像,您可以查看以下链接:
CheckBox不在对象库中可用。您可以使用第三方库来实现此目的,或者自己创建它。
这是复选框的工作代码。
在@inteface中创建一个类级变量和按钮属性。
@interface testViewController (){
BOOL checkBoxSelected;
}
@property (weak, nonatomic) IBOutlet UIButton *checkBox;
@end
[_checkBox setBackgroundImage:[UIImage imageNamed:@"checkBoxUnChecked.png"]
forState:UIControlStateNormal];
[_checkBox setBackgroundImage:[UIImage imageNamed:@"checkBoxChecked.png"]
forState:UIControlStateSelected];
checkBoxSelected = !checkBoxSelected; /* Toggle */
[_checkBox setSelected:checkBoxSelected];
1)在UITableView中创建原型单元格。
2)在单元格内添加一个按钮,并将按钮样式设置为自定义。
3)设置复选框的图像。
iOS语言不使用复选框控制器。 但是您可以使用复选框,导入两个图像选择和取消选择
步骤1> 创建按钮并设置图像。
步骤2> 创建按钮触摸对象方法,并放置检查和取消检查的if条件。 例如:
- (IBAction)btnLogin:(id)sender {
UIButton *btn = (UIButton *)sender;
if (btn.tag == 0) {
btn.tag = 1;
//set image checked.
}
else{
btn.tag = 0;
//set image unchecked.
}
}
你不应该需要子类化UIButton类。按照设计,Objective-C更青睐组合而非继承。
UIButton是UIControl的一个子类,它具有selected属性。您可以使用此属性来切换复选框的开/关行为,就像UISwitch一样。
您可以将动作附加到按钮的“touched up inside”事件上,并在其中执行切换操作,就像这样:
// when you setup your button, set an image for the selected and normal states
[myCheckBoxButton setImage:nonCheckedImage forState:UIControlStateSelected];
[myCheckBoxButton setImage:nonCheckedImage forState:UIControlStateNormal];
- (void)myCheckboxToggle:(id)sender
{
myCheckboxButton.selected = !myCheckboxButton.selected; // toggle the selected property, just a simple BOOL
}