2012-07-06 5 views
0

도시별로 현시별로 데이터를 필터링하고 현명한 테이블 섹션으로 인쇄하고 싶습니다. 이런 코드가 있습니다.plist에서 NSArry의 필터 데이터

NSMutableArray *key1=[NSMutableArray arrayWithCapacity:count]; 
NSMutableArray *city=[NSMutableArray arrayWithCapacity:count]; 
NSMutableArray *name= [NSMutableArray arrayWithCapacity:count]; 
for(id key in data) { 
    [key1 addObject:key]; 
} 
for (int i=0;i<[key1 count]; i++) { 
    NSLog(@"key:%@",[key1 objectAtIndex:i]); 
} 
for (int i=0;i<[key1 count]; i++) { 
    NSDictionary *email_key=[data objectForKey:[key1 objectAtIndex:i]]; 
    [city addObject:[email_key objectForKey:@"city"]]; 
    [name addObject:[email_key objectForKey:@"f_name"]]; 
} 

나는 plist에서 온 도시의 배열을 가지고 있습니다.

내 PLIST의 내용 :

NSMutableDictionary *cityBasedData=[[NSMutableDictionary alloc] init]; 
for(id key in data) { 
    [key1 addObject:key]; 
} 
for (int i=0;i<[key1 count]; i++) { 
    NSDictionary *email_key=[data objectForKey:[key1 objectAtIndex:i]]; 
    if (![cityBasedData objectForKey:[email_key objectForKey:@"city"]]) { 
    NSMutableArray *nameList = [[NSMutableArray alloc] init]; 
    [nameList addObject:[email_key objectForKey:@"f_name"]]; 
    [cityBasedData setValue:nameList forKey:[email_key objectForKey:@"city"]]; 
    [nameList release]; 
    } 
    else 
    { 
     NSMutableArray *nameList = [cityBasedData objectForKey:[email_key objectForKey:@"city"]]; 
     [nameList addObject:[email_key objectForKey:@"f_name"]]; 
    [cityBasedData setValue:nameList forKey:[email_key objectForKey:@"city"]]; 
    } 

} 

이 사전을받은 후, 당신은 사전에 각 키를 통과 할 수 있으며, 각각의 키 배열을 얻을 다음과 같이

<key>[email protected]</key> 
<dict> 
    <key>fnmae</key><string>hello</string> 
    <key>city</key><string>DElhi</string> 
</dict> 
<dict> 
    <key>fnmae</key><string>hi</string> 
    <key>city</key><string>Bombay</string> 
</dict> 

답변

0

먼저 모든 고유 한 도시의 이름을 얻을 :

for(id key in cityBasedData) 
{ 
    //get array as follows: 
    NSArray *namelist = [cityBasedData objectForKey:key]; 
} 
+0

코드를 for 루프로 설명해 주시겠습니까? – Bhoomi

+0

그것은 표 셀에 데이터를 표시하는 데 사용됩니다. 그러나 다른 xib로 이동하는 테이블 셀을 클릭하면 그 user.And에 대한 데이터를 표시해야하는데 다음 xib에 키를 전달해야합니다. 어떻게 전달할 수 있습니까? 다른 xib에 그 세포의 가치? – Bhoomi

+0

도시의 섹션 현명한 테이블에 데이터를 표시하는 방법은 무엇입니까? – Bhoomi