2013-08-21 59 views
0

我想通過使用聯繫人姓名的第一個字符將我的應用中的所有聯繫人分組。結果看起來像是Android Phone中的默認聯繫人書籍。 我不知道可以解決我的問題的API的名稱。 你能給我它的名字嗎?Android:使用聯繫人姓名的第一個字符對聯繫人進行分組

圖片人物:image

+0

你能夠獲取聯繫人嗎?如果是這樣,那麼我知道一種排序字符串的方法。 – Zax

+0

是的,我從手機中獲取所有聯繫人並將其全部顯示到列表視圖中。我成功地做到了。但是,聯繫人未按組排序。 – R700

回答

0

您可以使用如下所示TreeSet類字符串進行排序的對象:

TreeSet mySet = new TreeSet(); 

mySet.add("java"); 
mySet.add("C"); 
mySet.add("Pascal"); 
mySet.add("ruby"); 

Log.d("TAG",mySet);//output here will be C,java,Pascal,ruby, 

//Now our task is to fetch strings from the sorted strings in `mySet` object 

String[] names= mySet.toArray(new String[mySet.size()]); 

//Now you will have sorted names in the names[] array 

所以,如果你能夠從獲取字符串/名稱作爲評價你聯繫人,則可以通過創建TreeSet類型的對象並將所有聯繫人添加到此對象並將其轉換爲如上所示的字符串數組來使用上述概念。

我確定這個肯定有幫助。

+0

謝謝Zax!你的消化對分揀聯繫非常有幫助。關於通過聯繫人姓名的第一個字符來分組聯繫人怎麼樣?我需要分組聯繫。每個組都有一個Session(會話的名稱是聯繫人名稱的第一個字符)? – R700

+0

在Java字符串中,您有startsWith()函數。使用這個,你可以進一步從名字數組開始的字符串中獲取字符串。如果這有幫助,請接受答案。 – Zax

+0

感謝您的支持,Zax。我自己解決我的問題。 – R700