Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 解析json并获取异常,原因:'-[\uu\NSCFArray objectForKey:]:发送到实例0x7b1c7630的选择器无法识别_Ios_Objective C_Iphone_Xcode - Fatal编程技术网

Ios 解析json并获取异常,原因:'-[\uu\NSCFArray objectForKey:]:发送到实例0x7b1c7630的选择器无法识别

Ios 解析json并获取异常,原因:'-[\uu\NSCFArray objectForKey:]:发送到实例0x7b1c7630的选择器无法识别,ios,objective-c,iphone,xcode,Ios,Objective C,Iphone,Xcode,我试图从字典中获取特定键的值,但得到了一个[\uu nscsfarray objectForKey:]:发送到实例的无法识别的选择器 - (void)listCaredMembersSuccessResponse:(NSDictionary *)response { [self hideActivityView]; if ([[response valueForKey:@"status"] caseInsensitiveCompare:NSLocalizedString(@"SUCCESS"

我试图从字典中获取特定键的值,但得到了一个
[\uu nscsfarray objectForKey:]:发送到实例的无法识别的选择器

- (void)listCaredMembersSuccessResponse:(NSDictionary *)response {
[self hideActivityView];

 if ([[response valueForKey:@"status"] caseInsensitiveCompare:NSLocalizedString(@"SUCCESS", nil)] == NSOrderedSame) {
   NSDictionary *mainDict = [response objectForKey:@"data"];
   NSArray *detailsArray = [mainDict objectForKey:@"Text"];
   [appDelegate.proxiesListArr addObjectsFromArray:[ParserManager parseListCaredMembers:detailsArray]];
 } else {
   [[ClassObjects sharedCenter] showCustomAlert:@"" Message:NSLocalizedString(@"PROXIES_FAILURERESPONSE", nil)];
  }
这是我的json响应:

{"Status":"Success","data":[{"Alias":"1-0","ID":80,"Icon":"","Items":[],"Params":{},"Text”:”Text1”,”Type":"group","Width":"170"},{"Alias":"1-1","ID":8000102,"Icon":"","Items":[],"Params":{},"Text”:”Text2”,”Type":"group","Width":"170"}]}

问题是您有一个
NSArray
而不是
NSDictionary
NSArray
的计数为1,并包含一个
NSDictionary

此行错误
NSArray*detailsArray=[mainDict objectForKey:@“Text”]

更新

if ([[response valueForKey:@"status"] caseInsensitiveCompare:NSLocalizedString(@"SUCCESS", nil)] == NSOrderedSame) {

NSArray *mainDict = [response objectForKey:@"data"];

  for (NSDictionary *temp in mainDict) {

   NSString *text=[temp objectForKey:@"Text"]; //Text may be NSString type


    // THE REST OF YOUR CODE
}

}

@阿努布·卡提克。我正在根据您的答案更改代码,现在我得到了以下异常:[uu NSCFString objectForKey:]:未识别的选择器发送到实例0x7BF819B0,您在该行面临问题broNSDictionary*mainDict=[response objectForKey:@“data”];对于(主目录中的NSDictionary*temp){NSString*text=temp[@“text”];NSMutableArray*detailsArray=[[NSMutableArray alloc]init];[detailsArray addObject:text];[appDelegate.proxiesListArr addObjectsFromArray:[ParserManager parseListCaredMembers:detailsArray]];我是这样写的..但我在这行代码中遇到了问题“[appDelegate.proxiesListArr addObjectsFromArray:[ParserManager parseListCaredMembers:detailsArray];”@user3201089--您的答案是错误的,请等待我更新我的答案在这行代码中我遇到了异常”[appDelegate.proxiesListArr addObjectsFromArray:[ParserManager parseListCaredMembers:detailsArray]];“异常如下”[\uu NSCFString objectForKey:]:发送到实例0x7ae24770的无法识别的选择器”
if ([[response valueForKey:@"status"] caseInsensitiveCompare:NSLocalizedString(@"SUCCESS", nil)] == NSOrderedSame) {

NSArray *mainDict = [response objectForKey:@"data"];

  for (NSDictionary *temp in mainDict) {

   NSString *text=[temp objectForKey:@"Text"]; //Text may be NSString type


    // THE REST OF YOUR CODE
}

}