列表视图中的联系人姓名出现问题

时间:2011-07-12 09:16:17

标签: android

如何在列表视图中显示所有联系人姓名。请帮我试试

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    lv=(ListView)findViewById(android.R.id.list);
    ContentResolver cr=getContentResolver();
    Cursor cur=cr.query(ContactsContract.Contacts.CONTENT_URI, null,null,null,null);

    if(cur.getCount()>0)
    {
        int x=0;
        String name[] = null;
        while (cur.moveToNext())
        {
            String id = cur.getString(
                                      cur.getColumnIndex(ContactsContract.Contacts._ID));
            name[x]=  cur.getString(
                                    cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
            x++;

            //Toast.makeText(this,id+"--"+name,Toast.LENGTH_LONG).show();
        }
        ArrayAdapter arr = new ArrayAdapter(this, android.R.layout.simple_list_item_1,name);
        lv.setAdapter(arr);
    }
}

问候 arindom

1 个答案:

答案 0 :(得分:0)

如果一切正常,那么问题在于你的字符串数组。你不能像你使用的那样使用字符串数组。请使用这样的代替

String name[] = new String[cur.getCount()];