[英]How to sort NSMutableArray in Alphabetical order according to there values in iPhone
在我的應用我收到從Web服務器的一些隊列細節的價值,我已經存儲了隊列ID和NSMutableArray的隊列冠軍,現在我需要的字母順序進行排序隊列冠軍,但如果我這樣做我所有的隊列ID值搞混向上,因此如何使隊列標題應按字母順序排序並存儲在其中的相應隊列ID值。
NSArray *DicPicklistValues = [tempPickList valueForKey:@"PickListValue"];
for(int i=0;i<[DicPicklistValues count];i++){
NSDictionary *tempDic = [DicPicklistValues objectAtIndex:i];
[queueId addObject:[tempDic objectForKey:@"Value"]];
[queueLabel addObject:[tempDic objectForKey:@"Label"]];
}
[queueLabel sortUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
您可以在構建queueId
和queueLabel
數組之前對DicPicklistValues
數組進行排序。 (順便說一下,變量名通常以小寫字母開頭。)
NSArray *dicPicklistValues = [tempPickList valueForKey:@"PickListValue"];
NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"Label"
ascending:YES
selector:@selector(localizedCaseInsensitiveCompare:)];
NSArray *sortedPicklistValues = [dicPicklistValues sortedArrayUsingDescriptors:[NSArray arrayWithObject:sort]];
// now use sortedPicklistValues instead of dicPicklistValues ...
還有一種更簡單的方法來構建queueId
和queueLabel
數組:
NSArray *queueId = [sortedPicklistValues valueForKey:@"Value"];
NSArray *queueLabel = [sortedPicklistValues valueForKey:@"Label"];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.