I have a NSString in an NSArray and I wanted to order this string/fields based on how important it is. So say the string is B, H, A, Q, Z, L, M, O.
I wanted it to be always sorted as A, Q, Z, B, H, O, L, M. This is a predefined set of rule. How do I do this? Can this be done using NSSortDescriptor?
NSArray has several sort functions. Three you might consider are:
- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr- (NSArray *)sortedArrayUsingSelector:(SEL)comparator- (NSArray *)sortedArrayUsingFunction:(NSInteger (*)(id, id, void *))comparator context:(void *)contextI think you might find the second, selector-based comparator the easiest to use to get started. See the docs here:
https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSArray_Class/NSArray.html#//apple_ref/occ/instm/NSArray/sortedArrayUsingSelector:
EDIT:
I think using NSSortDescriptor may be overkill, but here is a good post describing it:
How to sort NSMutableArray using sortedArrayUsingDescriptors?