无法删除数组中的对象

时间:2016-04-06 05:24:27

标签: ios objective-c nsmutabledictionary

我将NSUserDefault中的数据设置为对其他类的一次调用,如:

kPref = [NSUserDefaults standardUserDefaults]
[kPref setObject:dicOrder forKey:SEND_DATA];

并检索如下:

NSMutableDictionary *temp = [[kPref dictionaryForKey:SEND_DATA] mutableCopy];
[arrayOrder addObject:temp];

现在我无法从arrayOrder删除临时文件中的任何对象。

如何访问来自kpref的NSMutableDictionary 或者如何删除字典中的任何对象。

修改

即时删除它:

   [[[[[arrayOrder objectAtIndex:0] valueForKey:ORDER_Choice] valueForKey:str] mutableCopy] removeObjectAtIndex:0];

然后它返回给我相同的数组。

1 个答案:

答案 0 :(得分:0)

谢谢大家,我得到了解决方案:

使用archivedDataWithRootObject:dicOrder

  [kPref setObject:[NSKeyedArchiver archivedDataWithRootObject:dicOrder] forKey:SEND_DATA];

unarchiveObjectWithData:dataRepresentingSavedArray喜欢:

NSData *dataRepresentingSavedArray = [kPref objectForKey:SEND_DATA];
NSMutableDictionary *newDict = [NSKeyedUnarchiver unarchiveObjectWithData:dataRepresentingSavedArray];