请帮我。
我有一个 plistclothingList.plist
我在一个方法中像这样访问它
NSString *path=[[NSBundle mainBundle] pathForResource:@"ClothingList" ofType:@"plist"];
//NSDictionary *ClothingAssets ; //Declared globally in .h file
ClothingAssets=[[NSMutableDictionary alloc]initWithContentsOfFile:path];
[[NSUserDefaults standardUserDefaults]setObject:ClothingAssets forKey:@"ClothingAssets"];
[[NSUserDefaults standardUserDefaults] synchronize];
现在我想用另一种方法修改服装资产字典中的布尔值。
ClothingAssets=[[NSUserDefaults standardUserDefaults] dictionaryForKey:@"ClothingAssets"];
[[[[[[ClothingAssets objectForKey:@"ClothingStore"] objectAtIndex:temp_Store]objectForKey:@"Assets" ]objectForKey:[NSString stringWithFormat:@"%@",temp_AssetType]] objectAtIndex:ii] setValue:@"YES" forKey:@"isLock"] ;
当我第一次运行代码时它崩溃并显示如下错误:
************ Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object'***
*** First throw call stack:
(0x1fb5012 0x29c5e7e 0x1fb4deb 0x1f7b347 0x3f39bf 0x435d9 0x41f76 0xea5020 0x29d9705 0xab5920 0xab58b8 0xb76671 0xb76bcf 0xb75d38 0xae533f 0xae5552 0xac33aa 0xab4cf8 0x3397df9 0x3397ad0 0x1f2abf5 0x1f2a962 0x1f5bbb6 0x1f5af44 0x1f5ae1b 0x33967e3 0x3396668 0xab265c 0x22ed 0x2225 0x1)
libc++abi.dylib: terminate called throwing an exception******
但是当我第二次运行代码时,它工作正常。
请帮我。