Bob*_*Bob 3 iphone nsuserdefaults nsmutablearray nsarray ios
我有一个问题,我无法理解,并希望有人可以给我一个提示或帮助.
我有一个表,其中包含7个对象.当按下其中一个对象时,向用户呈现对应于被按压对象的新表.在该表中,用户可以按下"添加"按钮,将它们带到新表,在那里他们可以选择表2的对象.
表1和表3(第一个和最后一个)不需要编辑,但表2需要.我需要添加用户从表3中选择的数据,并在关闭后再次进入应用程序时保存它.
在表1中总是有7个对象.并且需要能够有一个不同的表2.所以我不确定最好的方法是创建7个不同的数组.
我之前已经看过,并且一直在使用,NSUserDefaults但是我不确定在使用时接近这个的好方法是什么NSUserDefaults.
你需要让你的数组从用户默认值中修改它,然后将其重写回userdefaults.获取数组:
NSMutableArray *yourArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"yourKey"]mutableCopy];
Run Code Online (Sandbox Code Playgroud)
设置数组:
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:yourArray forKey:@"yourKey"];
[userDefaults synchronize];
Run Code Online (Sandbox Code Playgroud)
或者使用词典并嵌套它们
NSMutableDictionary *yourDict1 = [[NSUserDefaults standardUserDefaults]objectForKey:@"yourKey1"]mutableCopy];
NSMutableDictionary *yourDict2 = [[yourDict1 valueForKey:@"yourKey2"]mutableCopy];
// THIS WILL ADD DATA TO YOUR DICTIONARY
[yourDict2 setValue:@"value" forKey:@"key"];
// THIS WILL GET DATA FROM YOUR DICTIONARY
NSString *tempStr = [yourDict2 valueForKey:@"keyToGet"];
// This will write your sub dictionary to your main dictionary
[yourDict1 setObject: yourDict2 forKey:@"yourKey2"];
// This will write your main dictionary back out to user defaults
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject: yourDict1 forKey:@"yourKey1"];
[userDefaults synchronize];
[yourDict1 release];
[yourDict2 release];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4436 次 |
| 最近记录: |