我是 OS X 应用程序开发的新手。我在应用程序中有许多复选框。我需要将值存储为 1 和 0,具体取决于是否选中了复选框。如何获取 NSInteger 变量的值,例如“NSInteger sampleValue”。
问问题
7044 次
3 回答
8
创建 IBAction 并连接到复选框
-(IBAction)checkBoxState : (id)sender;
{
NSLog(@"state %d", [sender state]);
}
如果您有多个复选框,请将所有复选框连接到相同的 IBAction 方法。更改复选框的标记值
-(IBAction)checkBoxState : (id)sender;
{
if (0==[sender tag]) {
NSLog(@"1st checkbox state %d", [sender state]);
}
else if (1==[sender tag]) {
NSLog(@"2nd checkbox state %d", [sender state]);
}
else if (2==[sender tag]) {
NSLog(@"3rd checkbox state %d", [sender state]);
}
}
看看示例项目。
于 2012-12-27T08:45:43.030 回答
4
如果你想获得NSInteger
价值使用[checkbox state]
。可以这样做:
NSInteger integValue = [checkBoxOutlet state];
NSLog(@"%li", integValue); //Show value on screen
checkBoxOutlet是您在头文件中的复选框出口。
于 2012-12-27T08:00:30.570 回答
3
您可以找到:(check1 是 checkBox 的属性名称)
NSLog(@"%ld",[_check1 state]);//will give -1, 0 or 1, as mixed, off or on.
此外,如果您想更具未来感(即,如果将来 1 或 0 或 -1 的值发生变化,请使用这些 enums )
if ([_check1 state]==NSOnState) {
NSLog(@"ON-Checked");
}
else if([_check1 state]==NSOffState){
NSLog(@"OFF-UnChecked");
}
else if([_check1 state]==NSMixedState){
NSLog(@"OFF-MixedChecked");
}
于 2012-12-27T08:46:56.257 回答