我正在尝试将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]);
}

最佳答案

您想要的是这样的:

[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:用法上添加了备注。

关于cocoa - setObject ForKey,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5558085/

10-12 03:46
查看更多