Tengo una matriz de objetos NSString que debo ordenar descendiendo.Matriz de ordenación (NSArray) en orden descendente
Como no encontré ninguna API para ordenar la matriz en orden descendente me acerqué de la siguiente manera.
Escribí una categoría para NSString como se indica a continuación.
- (NSComparisonResult)CompareDescending:(NSString *)aString
{
NSComparisonResult returnResult = NSOrderedSame;
returnResult = [self compare:aString];
if(NSOrderedAscending == returnResult)
returnResult = NSOrderedDescending;
else if(NSOrderedDescending == returnResult)
returnResult = NSOrderedAscending;
return returnResult;
}
Entonces me ordenan la matriz mediante la declaración
NSArray *sortedArray = [inFileTypes sortedArrayUsingSelector:@selector(CompareDescending:)];
Es esta solución correcta? hay una mejor solución?
desde 'sortDescriptorWithKey' 10.6 aboveI han utilizado siguiente declaración. [[NSSortDescriptor alloc] initWithKey: nil ascendente: NO]; gracias ... –
De hecho, debería haber mencionado eso - no se olvide de la -autorelease though :) –
¡Funciona increíble! ¡Gracias! –