无法在ListView中显示联系人姓名

时间:2011-07-11 13:15:26

标签: android android-listview

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);
    }
}

我使用此逻辑在ListView中显示联系人姓名,但不会显示任何名称;我收到了意想不到的错误。如果我使用Toast,它就能完美运作。

1 个答案:

答案 0 :(得分:0)

android.R.layout.simple_list_item_1应该是TextView

的资源