2 ll66521 LL66521 于 2015.06.25 10:39 提问

android 通讯录,按字母排序

如何在android开发中开发一个联系人通讯录,根据姓名排序

7个回答

qq176128667
qq176128667   2015.06.25 16:16

处理List集合,然后给集合排序放到ListView中

qq787068730
qq787068730   2015.06.26 12:51

如果只是排序,很简单。采用java自带的Collections.sort(***,***)方法。代码可以这样写:

List list =new ArrayList();
//Test是你的联系人实体。假设联系人的姓名是name,并且实体里有个方法getName(),返回的是联系人的名字
//然后对list赋值
Collections.sort(list,new Comparator(){
@Override
public int compare(Test lhs, Test rhs){
return (lhs.getName().compateTo(rhs.getName())); //这个是升序。把此行lhs和rhs互换,就是降序了。
}
}

在线手敲,求过

qq_27582155
qq_27582155   2015.06.26 23:51

我见过一个demo(技术水平有限,没看的怎么懂),姓名是写在drawable的xml中,使用了一些pinyin.jar等外部工具。其实这个有点类似微信中国
家的选择,按照字母排序各个国家。我还有那个demo,需要请@我

lht80s
lht80s   2015.06.29 14:53

用SQLite数据库保存联系人信息,查询时sort by姓名就行了。
不过如果你是想把中文名字按拼音字母排序的话,那就不是个小工程了。
给你个链接供你研究吧:
http://blog.csdn.net/xiaanming/article/details/12684155

xuhuandeshouhuzhe
xuhuandeshouhuzhe   2015.10.10 16:35

联系人信息保存到sqlite数据库里面吧,然后数据读取出来排序一下,显示到listview 就可以了。

qq_27665781
qq_27665781   Rxr 2016.01.26 15:40
baidu_38381247
baidu_38381247   2017.04.20 18:04
Csdn user default icon
上传中...
上传图片
插入图片