0

我的表中有一个名为 is_active 在布尔类型的核心数据表中的字段。

我的故事板中有一个开关。

如果开关打开和开关关闭,我想在两种情况下都将值输入数据库表。

例如:就像我正在输入类别的名称

[newCategory setValue:self.txtEnterName.text forKey:@"name"];

就像我想在开关打开和关闭时输入值一样。

我正在使用它,我知道这是完全错误的......

if (self.txtIsActive.isOn) {
    [newCategory setValue:self.txtIsActive.1 forKey:@"is_active"];
} else {
    [newCategory setValue:self.txtIsActive.0 forKey:@"is_active"];
}

但我想在我的数据库中输入 0 和 1 值,而这取决于选择了哪一个。

好的,伙计们

我已经编辑了我的代码感谢 MR Ramy Al Zuhouri

    if (self.txtIsActive.isOn)
 {
 [newCategory setValue: @(self.txtIsActive.isOn) forKey:@"is_active"]; 
}
 else
{
 [newCategory setValue: @(self.txtIsActive.tag == '0') forKey:@"is_active"]; 
}

这就是我需要 o 和 1 反对数据库中的关闭和打开。

4

2 回答 2

1

coreData 布尔值映射到 NSNumber,因此您可以直接将其设置为

newCategory.is_active = [NSNumber numberWithBool:self.txtIsActive.isOn];
于 2013-09-24T19:55:18.153 回答
1

试试这个:

[newCategory setValue: @(self.txtIsActive.isOn) forKey:@"is_active"];

@用于创建一个NSNumber带有圆括号之间的值。

于 2013-09-24T20:06:20.213 回答