开发者

Separate the records of nsmutablearray according to key

- (NSArray *)graphView:(S7GraphView *)graphView yValuesForPlot:(NSUInteger)myplotIndex {

NSLog(@"Y Axis Records %@ ",detailsArray);

NSMutableArray *yAxisarray = [[NSMutableArray alloc] init];

switch (myplotIndex) 
{
    default:
    case 0:


        for (int i=0; i < [detailsArray count]; i++ )

        {
            NSMutableDictionary *tempData=[detailsArray objectAtIndex:i];
            NSLog(@"Systolic details%@",tempData);
            NSMutableString *dataString = [tempData objectForKey:@"systolic"];
            NSLog(@"Systolic %@",dataString);
            [yAxisarray addObject:dataString];

        }
        break;
    case 1:
        for (int i=0; i < [detailsArray count]; i++ )

        {
            NSMutableDictionary *tempData=[detailsArray objectAtIndex:i];
            NSMutableString *dataString=[tempData objectForKey:@"diastolic"];
            NSLog(@"Diastolic%@",dataString);
            [yAxisarray addObject:dataString];

        }   
        break;
    case 2:     

        for (int i=0; i < [detailsArray count]; i++ )

        {

            NSMutableDictionary *tempData=[detailsArray objectAt开发者_开发问答Index:i];
            NSMutableString *dataString=[tempData objectForKey:@"map"];
            NSLog(@"Mean%@",dataString);
            [yAxisarray addObject:dataString];

        }           
        break;
}
return yAxisarray;
}


You can do all of the processing in a single for loop instead of using a switch case and the iterating 3 times.

NSMutableArray *firstArray = [NSMutableArray array];
NSMutableArray *secondArray = [NSMutableArray array];
NSMutableArray *thirdArray = [NSMutableArray array];

for (int i=0; i < [detailsArray count]; i++ ) {
            NSMutableDictionary *tempData=[detailsArray objectAtIndex:i];
            NSMutableString *dataString=[tempData objectForKey:@"firstKey"];
            [firstArray addObject:dataString];

            dataString=[tempData objectForKey:@"secondKey"];
            [secondArray addObject:dataString];

            dataString=[tempData objectForKey:@"thirdKey"];
            [thirdArray addObject:dataString];
}

[yAxisArray addObjectsFromArray:firstArray];
[yAxisArray addObjectsFromArray:secondArray];
[yAxisArray addObjectsFromArray:thirdArray];
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜