Android重复联系人显示在Listview中

时间:2015-09-09 09:19:28

标签: android listview contacts

在我的Android应用程序中,我打开我的联系人列表并在列表视图中显示它...但是当我在移动设备上测试应用程序时...一些联系人重复5-6次。但在模拟器中,它工作正常。我在下面给出我的代码..如果有任何eroor请帮助我..

Cursor c = this.managedQuery(ContactsContract.Data.CONTENT_URI, null,
        Data.MIMETYPE + "=?", // condition
        new String[] {
            ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
        }, // value
        null);

ArrayList<Contact> contacts = new ArrayList<Contact>();

while (c.moveToNext())
{
    int type = c.getInt(c.getColumnIndex(Phone.TYPE));
    if (type == Phone.TYPE_MOBILE)
    {
        Contact con = new Contact(c.getString(c
                .getColumnIndex(Contacts.DISPLAY_NAME)), c.getString(c
                .getColumnIndex(Phone.NUMBER)));
        contacts.add(con);
    }
}

listView.setAdapter(new ContactsAdapter(this, contacts));

1 个答案:

答案 0 :(得分:0)

您确定所有的c(s)彼此不同吗? 我的意思是,当您在智能手机中启动应用程序时,您在光标中获得的数据是否正确?没有重复?