2013-04-23 82 views
1

我想在包含法語口音的BlackBerry中對SimpleSortingVector進行排序。排序將具有重音的項目放在列表的最後。我如何分類黑莓將重音字符與不重疊的字符。 Collat​​or似乎不工作,因爲我相信我的JRE版本太低。我正在爲JRE 4.5.0編寫最低版本。黑莓 - 用口音排序

É= E

這裏是我如何排序的向量:

ssv.setSortComparator(new Comparator() 
{ 
    public int compare(Object obj1, Object obj2) 
    { 
      String value = ((Item) obj1).getText(); 
      String otherValue = ((Item) obj2).getText(); 

      return value.compareTo(otherValue); 
    } 
}); 

ssv.reSort(); 

感謝, DMAN

回答

2

OS 4.5是一個挑戰。對於OS 7,RIM添加一個字符串比較器對StringUtilities可以配置你想要的方式:

StringUtilities.compare(String aString1, int aOffset1, int aLength1, 
         String aString2, int aOffset2, int aLength2, 
         int aLevel, int aLocale, int aFlags, int aFlagsMask) 

不幸的是,我不知道早期版本BBOS的任何內置的解決方案。您可以爲法語字符構建自己的排序表,如果您只需要支持法語,則可以編寫自定義比較器。如果你正在尋找全球兼容性,那將是乏味的。