NSDictionnary의 배열이 있는데 int 값 (키의 이름은 "age")으로 정렬하고 싶습니다. 예 :iOS의 sortedArrayWithSelector 및 NSDictionnary
Dic1 : age = 30, sex = male; Dic2 : 나이 = 24, 성별 = 남성;
어레이 : Dic1, Dic2;
지금 비교하는 방법 내가 가지고 사장님 것이다 :
배열 : Dic2, Dic1;
많은 것을 시도했지만 작동하지 않습니다. 편집 내가 NSSortDescriptor을 사용하는 것으로하지만, iOS 4.0 버전 :(
당신이 솔루션을 가지고 이후에만 사용할 수 감사
:
- (NSComparisonResult)compareGood:(NSDictionary *)otherObject
{
return [[self objectForKey:@"age"] compare:[otherObject objectForKey:@"age"]];
}
:
내가있는 NSDictionary 범주에 비교 방법을 썼다?!
하지만이 오류가 발생했습니다 : 캐치되지 않은 예외 'NSInvalidArgumentException'으로 인해 응용 프로그램을 종료하는 중 '* - [NSCFNumber compare :] : nil argument'
sortDescriptorWithKey : 오름차순 : 및 sortedArrayUsingDescriptor은 아이폰 OS 4.0 이후에서만 사용할 수 있습니다. 하지만 지금은 sortUsingDescriptors를 사용하고 있습니다 : initWithKey : ascending : – Pierre
좋은 지적 - '-initWithKey : ascending :'을 사용하도록 예제를 업데이트했습니다. – Caleb