' NSInvalidArgumentException',原因:' - [NSTaggedPointerString objectForKey:]:无法识别的选择器发送到实例0xa000000617461644'

时间:2018-04-18 11:59:13

标签: ios objective-c json

我正在开发简单的应用程序,它获取json数据并存储到不同的变量中  这是我获取json数据的代码

if ([method isEqualToString:@"getmobiledata"]){

       defaultDict = [[NSMutableDictionary alloc]init];
         [defaultDict addEntriesFromDictionary:[NSJSONSerialization JSONObjectWithData:[data dataUsingEncoding:NSUTF8StringEncoding] options:0 error:nil]];
         mobile = [defaultDict objectForKey:@"data"];

    }

这是我儿子的数据:

{
    data =     (
                {
            id = 1;
            package = 819MB;
            rate = "$1";
            type = Somnet;
        },
                {
            id = 2;
            package = "1,638MB";
            rate = "$2";
            type = Somnet;
        },

    );
}

这里将json变成nstring:

for(NSDictionary *getData in mobile){
         NSString *idno  = [getData objectForKey : @"id"];
         NSString *package = [getData objectForKey :@"package"];
         NSString *rate = [getData objectForKey :@"rate"];
         NSString *type = [getData objectForKey :@"type"];

    }

请帮我解决这个问题

1 个答案:

答案 0 :(得分:-1)

数据模型将与系统属性ID冲突,它将发生冲突并崩溃。 您可以使用这样的新ID:

- (void)setValue:(id)value forUndefinedKey:(NSString *)key { if([key isEqualToString:@"id"]) self.NewId = value; }