[英]How to inspect elements from NSArray and NSDictionary in xcode?
[英]How to get data into NSArray from NSDictionary
我从字典中获取数据时出现以下错误
“ -[__ NSCFString objectForKey:]:无法识别的选择器已发送到实例0x4fbb80 ”
这是我的代码
NSDictionary *dic = [XMLReader dictionaryForXMLString:class.returnData error:nil];
MyGiftsarray = [[dic objectForKey:@"response"] objectForKey:@"gifts"];
for (NSDictionary *element in MyGiftsarray) {
[MyGiftsnamearray addObject:[element objectForKey:@"name"]];
[MyGiftsChkarray addObject:[element objectForKey:@"chk"]];
[MyGiftsIdarray addObject:[element objectForKey:@"id"]];
[MyGiftsApprovedarray addObject:[element objectForKey:@"approved"]];
[MyGiftsisCompletedarray addObject:[element objectForKey:@"completed"]];
}
这是我尝试从中获取数据的NSDictionary。 MyGiftsDict->(
{
Appliedpoint = 500;
Requiredpoint = 5000;
approved = N;
chk = 50;
completed = 0;
id = 66;
name = "1-800Flowers.com";
},
{
Appliedpoint = 85;
Requiredpoint = 2500;
approved = N;
chk = 25;
completed = 0;
id = 71;
name = "Bath Body Works";
},
{
Appliedpoint = 5;
Requiredpoint = 2500;
approved = N;
chk = 25;
completed = 0;
id = 75;
name = "Buca di Beppo";
},
{
Appliedpoint = 36;
Requiredpoint = 2500;
approved = N;
chk = 25;
completed = 0;
id = 66;
name = "1-800Flowers.com";
},
{
Appliedpoint = 25;
Requiredpoint = 5000;
approved = N;
chk = 50;
completed = 0;
id = 90;
name = "Jelly Belly";
},
{
Appliedpoint = 120;
Requiredpoint = 500;
approved = N;
chk = 5;
completed = 0;
id = 129;
name = "Amazon.com";
}
)
您以错误的方式进行迭代-使用-
MyGiftsDict = [[dic objectForKey:@"response"] objectForKey:@"gifts"];
然后逐步遍历字典。 您需要使用类似-
for(NSString *key in [MyGiftsDict allKeys])
{
[MyGiftsnamearray addObject:[MyGiftsDict objectForKey:key]];
}
礼物本身就是NSDictionary。 不是NSArray! 您不需要for循环。 简单使用
[MyGiftsNameArray addObject:[MyGiftsArray objectForKey:@"name"];
等等。
我认为您不需要for
周期。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.