2012-10-08 4 views
0
NSNumber *a; 

for(NSDictionary *item in[res valueForKey:@"snapshot"]) 
{ 
a=[item valueForKey:@"lat"]; 
NSLog(@"%@",a); 
b=[item valueForKey:@"lng"]; 
NSLog(@"%@",b); 
} 

: ("29.13", "29.38", "29.31", "29.30", "29.43") ("94.13", "94.38" "93.30", "94.58", "94.34")의 NSNumber 변환 쌍의 위도 및 콘솔 기록 경도

어떻게 두 값을 변환 할 수 있습니까? 이 출력에서 ​​위도와 경도의 각 쌍을 얻고 싶습니다.

답변

1

NSLog에 따르면, 당신은 valueForKey:에서 얻는 값은 NSArrays하지 NSNumber 있습니다. 그렇게 간단하게 배열을 따라 가십시오.

for(NSDictionary *item in[res valueForKey:@"snapshot"]) 
{ 
    NSArray* latitudesList = [item valueForKey:@"lat"]; 
    NSArray* longitudesList = [item valueForKey:@"lng"]; 
    NSInteger idx = 0; 
    NSInteger nb = MIN(latitudesList.count , longitudesList.count); 
    for(NSInteger idx = 0; idx < nb; ++idx) 
    { 
     double lat = [[latitudesList objectAtIndex:idx] doubleValue]; 
     double lng = [[longitudesList objectAtIndex:idx] doubleValue]; 
     NSLog(@"Pair #%d = { %f , %f }", idx, lat, lng); 
    } 
} 
+0

위로 엄지! AliSoftware에 감사드립니다. –