me tienen sin clasificar gama diccionario y que desea ordenar de acuerdo a la lista artista names.Unsorted se dan a continuación:¿Cómo ordenar NSArray con objetos de diccionario alfabéticamente?
{
artist = "Afro Latin Jazz Orchestra";
id = 10;
},
{
artist = "Avey, Bobby";
id = 17;
},
{
artist = "American Symphony Orchestra";
id = 32;
},
{
artist = "Akpan, Uwem";
id = 97;
},
{
artist = "Austin, Ivy ";
id = 123;
},
{
artist = "American Theatre Orchestra";
id = 153;
},
{
artist = AudraRox;
id = 171;
},
{
artist = "Atlas, James";
id = 224;
},
{
artist = "Alden, Howard";
id = 270;
},
{
artist = Astrograss;
id = 307;
},
{
artist = "Adan, Victor";
id = 315;
},
{
artist = "Alegria, Gabriel";
id = 316;
},
{
artist = "Andersen, Kurt";
id = 412;
},
{
artist = Antares;
id = 420;
},
{
artist = "Austen, Jane ";
id = 426;
},
{
artist = "Acuna, Claudia";
id = 443;
},
{
artist = "Akinmusire, Ambrose";
id = 444;
},
{
artist = "Anderson, Laurie Halse";
id = 559;
},
{
artist = "Alvarez, Javier";
id = 591;
},
{
artist = "Alexander, Jane";
id = 674;
},
{
artist = "Andy Teirstein";
id = 695;
},
{
artist = "Afro-Cuban Jazz Saxtet";
id = 707;
},
{
artist = "Aurora ";
id = 708;
},
{
artist = "Aurora ";
id = 709;
},
{
artist = "August, Gregg ";
id = 715;
},
{
artist = "Aldous, Brian";
id = 777;
},
{
artist = "Anne Enright";
id = 1130;
}
Y después de su clasificación utilizando descriptor
NSSortDescriptor *sortByName = [NSSortDescriptor sortDescriptorWithKey:@"artist" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortByName];
sortedArray = [artistArray sortedArrayUsingDescriptors:sortDescriptors];
que da como matriz ordenada
{
artist = "Acuna, Claudia";
id = 443;
},
{
artist = "Adan, Victor";
id = 315;
},
{
artist = "Afro Latin Jazz Orchestra";
id = 10;
},
{
artist = "Afro-Cuban Jazz Saxtet";
id = 707;
},
{
artist = "Akinmusire, Ambrose";
id = 444;
},
{
artist = "Akpan, Uwem";
id = 97;
},
{
artist = "Alden, Howard";
id = 270;
},
{
artist = "Aldous, Brian";
id = 777;
},
{
artist = "Alegria, Gabriel";
id = 316;
},
{
artist = "Alexander, Jane";
id = 674;
},
{
artist = "Alvarez, Javier";
id = 591;
},
{
artist = "American Symphony Orchestra";
id = 32;
},
{
artist = "American Theatre Orchestra";
id = 153;
},
{
artist = "Andersen, Kurt";
id = 412;
},
{
artist = "Anderson, Laurie Halse";
id = 559;
},
{
artist = "Andy Teirstein";
id = 695;
},
{
artist = "Anne Enright";
id = 1130;
},
{
artist = Antares;
id = 420;
},
{
artist = Astrograss;
id = 307;
},
{
artist = "Atlas, James";
id = 224;
},
{
artist = AudraRox;
id = 171;
},
{
artist = "August, Gregg ";
id = 715;
},
{
artist = "Aurora ";
id = 708;
},
{
artist = "Aurora ";
id = 709;
},
{
artist = "Austen, Jane ";
id = 426;
},
{
artist = "Austin, Ivy ";
id = 123;
},
{
artist = "Avey, Bobby";
id = 17;
}
Pero todavía no está ordenada por completo. Alguna idea de cómo puedo ordenarlo alfabéticamente usando el nombre del artista. ¡Ayúdame por favor!
¿Cuál es el problema con la clasificación? Los resultados que muestra están en orden? ¿En qué orden esperas que estén? –
posible duplicado de [¿Cómo puedo ordenar un NSArray que contenga NSDictionaries?] (Http://stackoverflow.com/questions/3361207/how-can-i-sort-an-nsarray-containing-nsdictionaries) –
¿Es su problema específico que el tipo es sensible a las mayúsculas y minúsculas? Si es así, quiere '' [NSSortDescriptor sortDescriptorWithKey: @ "artist" ascendente: YES selector: @selector (caseInsensitiveCompare :)] '. – Dondragmer