objective c - Clasificación NSMutableArray-no distingue mayúsculas y minúsculas
objective-c cocoa (2)
Estoy ordenando un NSMutableArray
como sigue:
NSSortDescriptor *sortDescriptor;
sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:str_key ascending:bool_asc_desc] autorelease];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
NSArray *sortedArray;
sortedArray = [ads_printers_array sortedArrayUsingDescriptors:sortDescriptors];
El problema es que esto distingue entre mayúsculas y minúsculas, y me gustaría que sea insensible a las mayúsculas. ¿Cómo puedo hacer eso? Intenté leer los documentos y encontré algo como esto:
sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:str_key ascending:bool_asc_desc selector: @selector(caseInsensitiveCompare)] autorelease];
Sin embargo, no tengo idea de lo que debería poner en el argumento selector. ¡Gracias!
Para Swift, haga lo siguiente:
let sortDescriptor = NSSortDescriptor(key: sortDescriptorKey, ascending: true, selector: #selector(NSString.caseInsensitiveCompare(_:)))
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:str_key
ascending:YES selector:@selector(caseInsensitiveCompare:)];
ads_printers_array = [ads_printers_array sortedArrayUsingDescriptors:[NSArray
arrayWithObject:sortDescriptor]];