0
我完全不熟悉iPhone/OSX的開發,我試圖按照字母順序排列一個充滿對象的NSMutableArray,但是我失敗了。以Å或Ä開始的項目最後以A開始,而以Ö開始的項目以O開頭。我嘗試了不同的排序方法,我在這裏找到了Stackoverflow,但它們都不起作用(對於我最少)用數組排序數組
NSSortDescriptor* stationDescriptor = [[NSSortDescriptor alloc]initWithKey:@"name" ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)];
NSArray* descriptors = [NSArray arrayWithObject:stationDescriptor];
[stations sortUsingDescriptors:descriptors];
[stations sortUsingComparator:^NSComparisonResult(Station* obj1, Station* obj2){
return [[obj1 name] localizedCaseInsensitiveCompare:[obj2 name]];
}];
好的,進展!通過將模擬器上的語言更改爲瑞典語,我已成功地實現了這一目標,當手機設置爲英語時,有什麼方法可以獲得相同的結果?我知道在C#中,您可以在排序/比較字符串時發送對特定文化的引用。
/維克托
感謝您的幫助! – Viktor
不應該是NSMakeRange(0,[[obj1 name] length])? – oskob
正是我在找什麼,我加了NSLocale * locale = [[NSLocale alloc] initWithLocaleIdentifier:@「nb_NO」]; 它開始爲我工作。 – york