【发布时间】:2016-03-13 00:53:38
【问题描述】:
我有一个按排序顺序排列的联系人列表。但是在我的联系人列表中,名称与相同的号码重复。我认为问题是因为联系人列表与不同的帐户同步。
我检查哈希图。但是当我使用哈希映射时,结果不是按名称排序的。
private static final String[] PROJECTION = new String[] {
ContactsContract.CommonDataKinds.Phone.CONTACT_ID,
ContactsContract.Contacts.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER
};
ContentResolver cr = getContentResolver();
Cursor cursor = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, PROJECTION,
null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + " COLLATE NOCASE ASC");
if (cursor != null) {
try {
int nameIndex = cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);
String nameContact = cursor.getString(nameIndex);
finally {
cursor.close();
}
}
适配器
holder.name.setText(itemListPogo.get(position).getItemName());
任何人都可以帮助避免名称重复。
【问题讨论】:
-
请发布完整的代码适配器
标签: android android-contentprovider android-contacts android-contentresolver