4
根據ABPersonGetSortOrdering()的結果,我想按名字或姓氏對UILocalizedIndexCollation進行排序。動態傳遞@selector
我在切換用於collationStringSelector參數的@selector時遇到問題。
這將會是很容易只寫這個冗長:
NSArray *sortedSubarray; if (ABPersonGetSortOrdering() == 0) { sortedSubarray = [collation sortedArrayFromArray:[sections objectAtIndex:section] collationStringSelector:@selector(fname)]; } else { sortedSubarray = [collation sortedArrayFromArray:[sections objectAtIndex:section] collationStringSelector:@selector(lname)]; }
我已經試過這樣的事情,沒有運氣:
SEL sorter = ABPersonGetSortOrdering() == 0 ? NSSelectorFromString(@"fname") : NSSelectorFromString(@"lname"); sortedSubarray = [collation sortedArrayFromArray:[sections objectAtIndex:section] collationStringSelector:@selector(sorter)];
我已經嘗試了其他的想法,似乎沒有任何工作。
有沒有更好的方式來動態地傳遞選擇器名稱?
真棒!我盡力不要問這個問題......至少我接近了!感謝您的快速回復。 – djibouti33 2011-03-17 07:06:37