【问题标题】:Saving NSMutableArray in NSUserDefault gives nil在 NSUserDefault 中保存 NSMutableArray 给出 nil
【发布时间】:2014-06-18 09:40:21
【问题描述】:

我已经试过了

设置:

NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:mutArr forKey:@"userInfo"];
[userDefaults 同步];

获取:

NSMutableArray *retrieveArray = [[NSMutableArray alloc] init];
retrieveArray = [[[NSUserDefaults standardUserDefaults] arrayForKey:@"userInfo"] mutableCopy];

谁能告诉我哪里出错了?
谢谢。

【问题讨论】:

  • 您确定将数组 mutArr 保存为不是空数组吗?
  • 是的,我查过了,它是空的。但现在它让我在 [[NSUserDefaults standardUserDefaults] setObject:mutArr forKey:@"Key"];
  • 我在 NSUserDefaults 中保存数据时询问该数组是否包含数据或空 aaray?
  • 它让我崩溃日志:尝试设置一个非属性列表对象

标签: ios nsmutablearray nsuserdefaults


【解决方案1】:

请尝试以下代码。

套装:

NSMutableArray *arrCategoryListSet = [[NSMutableArray alloc] initWithObjects:object1, object2, nil];   
[[NSUserDefaults standardUserDefaults] setObject:arrCategoryListSet forKey:@"CategoryList"];
[[NSUserDefaults standardUserDefaults] synchronize];

获取:

NSMutableArray *arrCategoryListGet = [NSMutableArray arrayWithArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"CategoryList"]];

NSMutableArray *arrCategoryListGet = [[NSUserDefaults standardUserDefaults] objectForKey:@"CategoryList"];

【讨论】:

    【解决方案2】:

    保存数组

    [[NSUserDefaults standardUserDefaults] setObject:youArray forKey:@"Key"];
    

    检索数组

     NSArray *retArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"Array"];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多