Android 如何从itemlist中获取所选项目的值

Android 如何从itemlist中获取所选项目的值,android,listview,Android,Listview,我不是从列表视图中获取所选项目的值,而是“com.contantbean……”。我想从选中的列表视图中获取姓名和电话号码 private ListView listView; private List<ContactBean> list = new ArrayList<ContactBean>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(sav

我不是从列表视图中获取所选项目的值,而是“com.contantbean……”。我想从选中的列表视图中获取姓名和电话号码

private ListView listView;
private List<ContactBean> list = new ArrayList<ContactBean>();


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.existingcontact);

    listView = (ListView) findViewById(R.id.listView1);
    listView.setOnItemClickListener(this);


    Cursor phones = getContentResolver().query(
            ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null,
            null, null);
    while (phones.moveToNext()) {

        String name = phones
                .getString(phones
            .getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));

        String phoneNumber = phones
                .getString(phones
                        .getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

        ContactBean objContact = new ContactBean();
        objContact.setName(name);
        objContact.setPhoneNo(phoneNumber);
        list.add(objContact);

    }
    phones.close();

    ContanctAdapter objAdapter = new ContanctAdapter(
            ExistingContact.this, R.layout.cdesign, list);
    listView.setAdapter(objAdapter);

@Override
public void onItemClick(AdapterView<?> adapter, View v, int position,
        long id) {
    String str = list.get(position).toString();

        ContactBean bean = (ContactBean) adapter.getItemAtPosition(position);
       Toast.makeText(ExistingContact.this,str,Toast.LENGTH_SHORT).show();
    //registerForContextMenu(listView);

}
私有ListView ListView;
私有列表=新的ArrayList();
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.existingcontact);
listView=(listView)findViewById(R.id.listView1);
setOnItemClickListener(this);
Cursor=getContentResolver().query(
ContactsContract.CommonDataTypes.Phone.CONTENT\u URI,null,null,
空,空);
while(phones.moveToNext()){
字符串名称=电话
.getString(电话)
.getColumnIndex(ContactsContract.CommonDataTypes.Phone.DISPLAY_NAME));
字符串phoneNumber=电话
.getString(电话)
.getColumnIndex(ContactsContract.CommonDataTypes.Phone.NUMBER));
ContactBean objContact=新ContactBean();
objContact.setName(名称);
objContact.setPhoneNo(电话号码);
list.add(objContact);
}
电话。关闭();
ContanctAdapter objAdapter=新ContanctAdapter(
现有contact.this、R.layout.cdesign、list);
setAdapter(objAdapter);
@凌驾
公共单击(适配器视图适配器,视图v,内部位置,
长id){
String str=list.get(position.toString();
ContactBean=(ContactBean)适配器.getItemAtPosition(位置);
Toast.makeText(ExistingContact.this,str,Toast.LENGTH_SHORT.show();
//registerForContextMenu(列表视图);
}

您应该保留从中填充
微调器的
列表
。如果是这样,您可以通过-

itemsList.get(position);

从用于调整listview的列表中获取项。例如,list.get(position),您将在该位置获取项。如果使用光标,则在这种情况下,将光标移动到该位置并相应地进行操作。list list=new ArrayList();