setObject ForKey

时间:2011-04-05 20:27:20

标签: cocoa

我试图将一个plist合并到我的项目中。我已完成从plist到我的项目的数据提取。现在我想写回修改后的数据。例如,我有一个textField,其中数据存储为整数。现在我想捕获整数数据,并使用:

将其存储在NSMutable Dictionary * temp中
[temp setObject:<what goes here?> forKey:@"key"];
在将所有内容写入plist之前

。我最终获得的是指针信息,而不是textField的值到字典中。我使用以下内容来检查字典:

for (id key in temp) {
 NSLog(@"entry %@ value %@", key, [temp valueForKey:key]);
}

1 个答案:

答案 0 :(得分:1)

你想要的是:

[temp setObject:[NSNumber numberWithInteger:[textField integerValue]] forKey:@"key"];

如果您正在为OS X编码。

或类似的东西:

[temp setObject:[NSNumber numberWithInteger:[textField.text integerValue]] forKey:@"key"];

如果您正在为iOS编码。

只是为了确保OP不会错过 edc1591 的评论:NSDictionary实现了一个方法objectForKey:,该方法应该用于支持通用KVC方法valueForKey: 。有关objectForKey:valueForKey:

的详细信息,请参阅this answer

编辑:忽略了OP提到的值是整数。修正了答案。 编辑:添加了关于valueForKey的注释:用法。