Either of these would allow you to do what you want for NSArray: - (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr; - (NSArray *)sortedArrayUsingFunction:(NSInteger (*)(id, id, void *))comparator context:(void *)context;
And these for NSMutableArray: - (void)sortUsingComparator:(NSComparator)cmptr; - (void)sortUsingFunction:(NSInteger (*)(id, id, void *))compare context:(void *)context; In all cases, you're just writing a function or block that compares the two provided objects (dictionaries in your case) as part of the sorting process. On Apr 27, 2011, at 6:59 AM, Martin Batholdy wrote: > I have an array of dictionaries. > > One dictionary-entry looks like this: > > { > ID = 34; > counter = 2; > date = "2011-04-19 15:43:52 +0200"; > title = "test.pdf"; > type = file; > } > > Now I would like to sort my array of dictionaries first by type and then > (within the type-dictionaries) by date. > > I can sort my array by one critierion with a NSSortDescriptor: > > NSSortDescriptor *descriptor; > descriptor = [[NSSortDescriptor alloc] initWithKey:@"date" ascending:NO]; > [bookmarks sortUsingDescriptors:[NSArray arrayWithObjects:descriptor, nil]]; > > > but how can I first "group" the dictionaries by type and then within the > types sort them by date? > (so use two sorting-criteria with a different priority) _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com