Selon le résultat de ABPersonGetSortOrdering(), je veux trier un UILocalizedIndexCollation par prénom ou nom de famille.Passer un @selecteur dynamiquement
Je rencontre des problèmes lors de la commutation du @selector utilisé pour le paramètre collationStringSelector.
Il serait très facile d'écrire tout ce verbeux:
NSArray *sortedSubarray; if (ABPersonGetSortOrdering() == 0) { sortedSubarray = [collation sortedArrayFromArray:[sections objectAtIndex:section] collationStringSelector:@selector(fname)]; } else { sortedSubarray = [collation sortedArrayFromArray:[sections objectAtIndex:section] collationStringSelector:@selector(lname)]; }
J'ai essayé quelque chose comme ça avec pas de chance:
SEL sorter = ABPersonGetSortOrdering() == 0 ? NSSelectorFromString(@"fname") : NSSelectorFromString(@"lname"); sortedSubarray = [collation sortedArrayFromArray:[sections objectAtIndex:section] collationStringSelector:@selector(sorter)];
J'ai essayé d'autres idées aussi bien , et rien ne semble fonctionner.
Existe-t-il un meilleur moyen de transmettre dynamiquement un nom de sélecteur?
génial! Je faisais de mon mieux pour ne pas poser la question ... au moins j'étais proche! Merci pour la réponse rapide. – djibouti33