[highscores sortUsingSelector:@selector(compare:)];
Should work if they are definitely all NSNumber s.
(Adding an object:
[highscores addObject:score];
)
If you want to sort downward (highest):
10.6 / iOS 4:
[highscores sortUsingComparator:^(id obj1, id obj2) { if (obj1 > obj2) return NSOrderedAscending; else if (obj1 < obj2) return NSOrderedDescending; return NSOrderedSame; }];
Otherwise, you can define a category method, for example:
@interface NSNumber (CustomSorting) - (NSComparisonResult)reverseCompare:(NSNumber *)otherNumber; @end @implementation NSMutableArray (CustomSorting) - (NSComparisonResult)reverseCompare:(NSNumber *)otherNumber { return [otherNumber compare:self]; } @end
And call him:
[highscores sortUsingSelector:@selector(reverseCompare:)];
Nate Weaver Jul 08 2018-10-10T00: 00-07
source share