【问题标题】:-[__NSCFArray bytes]: unrecognized selector sent to instance-[__NSCFArray bytes]: 无法识别的选择器发送到实例
【发布时间】:2020-01-17 06:29:30
【问题描述】:

我已将我的产品数组保存在用户默认值中,如下所示:

  NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
  [userDefault setObject:[NSKeyedArchiver archivedDataWithRootObject:plans] forKey:@"plans"];
  [[NSUserDefaults standardUserDefaults] synchronize];

并读取默认值如下:

    NSArray *plans;
    NSData *data = [[NSUserDefaults standardUserDefaults] objectForKey:@"plans"];
    if (data != nil)
    {
        plans = [NSKeyedUnarchiver unarchiveObjectWithData:data];
    }

但有时我的应用程序在调用 unarchiveObjectWithData 方法时因 -[__NSCFArray bytes]: unrecognized selector sent to instance 而崩溃。

【问题讨论】:

    标签: objective-c nsuserdefaults nskeyedarchiver


    【解决方案1】:

    在某些时候,您必须将 NSArray 存储到 NSUserDefaults 中,而不是存档数据。您是否尝试过清除用户默认设置并重试?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-28
      • 2012-07-24
      相关资源
      最近更新 更多