Ios 尝试设置非属性列表对象自定义对象
我一直在与一个使用.plist保存登录用户数据的现有项目进行斗争 在crashlytics上,我发现了一个导致崩溃的问题。当用户在web应用程序中更新其配置文件时,会导致应用程序崩溃 错误表明这是因为我试图设置一个非属性列表对象。但我已经尝试将所有字段添加到.plist文件中 在这里您可以看到已更改的plist 我不确定,但我认为“street”的值有问题Ios 尝试设置非属性列表对象自定义对象,ios,objective-c,properties,info.plist,Ios,Objective C,Properties,Info.plist,我一直在与一个使用.plist保存登录用户数据的现有项目进行斗争 在crashlytics上,我发现了一个导致崩溃的问题。当用户在web应用程序中更新其配置文件时,会导致应用程序崩溃 错误表明这是因为我试图设置一个非属性列表对象。但我已经尝试将所有字段添加到.plist文件中 在这里您可以看到已更改的plist 我不确定,但我认为“street”的值有问题 提前谢谢 事实上,问题可能来自“street”对象。因为根据你的plist,它应该是一个“文本”,但它似乎是一个NSArray 要获取文
提前谢谢 事实上,问题可能来自“street”对象。因为根据你的plist,它应该是一个“文本”,但它似乎是一个NSArray 要获取文本值,应执行以下操作:
NSString *streetString = ((NSArray *)[dict objectForKey:@"street"]).firstObject;
并保存该值。我尝试了您的解决方案,但仍然崩溃,因为:[VUtil setUserAddressDictionaryToUserDefaults:[NSMutableDictionary dictionaryWithDictionary:[responseArray firstObject]];这导致这个函数+(void)setUserAddressDictionaryToUserDefaults:(NSDictionary*)dict{NSUserDefaults*defaults=[NSUserDefaults standardUserDefaults];[defaults setObject:dict forKey:KEY_USER_ADDRESS];[defaults synchronize];}我不确定是否理解。。。但似乎[responseArray firstObject]不是一本字典。您应该这样写:@{@“street”:[responseArray firstObject]}