Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/35.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
Iphone for(NSString*输入[rewards allKeys])使应用程序崩溃?_Iphone_Ios - Fatal编程技术网

Iphone for(NSString*输入[rewards allKeys])使应用程序崩溃?

Iphone for(NSString*输入[rewards allKeys])使应用程序崩溃?,iphone,ios,Iphone,Ios,我有一个应用程序,它有一个从Web服务返回的字典。我正在将该字典传递给另一个视图控制器 在这个 NSDictionary *rewards=[rewardsdictionary objectForKey:@"rewards"]; NSLog(@"%@",rewards); NSMutableArray *dataArray=[[NSMutableArray alloc] init]; for(NSString *key in [rewards allKeys]) { NSDiction

我有一个应用程序,它有一个从Web服务返回的字典。我正在将该字典传递给另一个视图控制器

在这个

NSDictionary *rewards=[rewardsdictionary objectForKey:@"rewards"];
NSLog(@"%@",rewards);

NSMutableArray *dataArray=[[NSMutableArray alloc] init];
for(NSString *key in [rewards allKeys])
{
    NSDictionary *dict1=[rewards objectForKey:key];
    [dataArray addObject:dict1];
}
self.rewardsarray=[[NSMutableArray alloc] init];
self.rewardsarray=dataArray;
但是在这一行中(NSString*key in[rewards allKeys])应用程序正在崩溃。但是当我打印rewards或rewards dictionary时,值就在那里

-[\uu NSArrayM allKeys]:发送到实例0x76636b0的无法识别的选择器


有人能帮我摆脱困境吗?

显然,
奖励
不是一本
NSDictionary
。它是一个
NSArray

显然,
奖励
不是一个
NSDictionary
。这是一个
NSArray
在向其发送
所有密钥
消息之前,使用NSAssert检查
奖励
是否是
NSDictionary

在向其发送
所有密钥
消息之前,使用NSAssert检查
奖励
是否是
NSDictionary

您注销了什么?请把日志贴出来……什么让你注销?请发布日志…这将使应用程序提前一点失败。是否检查并确认为NSDictionary?这将使应用程序提前一点失败。是否检查并确认为NSDictionary?