Я делюсь полным кодом здесь. Вам нужно немного изменить, и вы можете выбрать имя, изображение и номер телефона из телефонной книги.спасибо
Cursor cursor = null;
String name, phoneNumber, image, email;
try {
cursor = getApplicationContext().getContentResolver()
.query(Phone.CONTENT_URI, null, null, null, null);
int nameIdx = cursor.getColumnIndex(Phone.DISPLAY_NAME);
int phoneNumberIdx = cursor.getColumnIndex(Phone.NUMBER);
int photoIdIdx = cursor.getColumnIndex(Phone.PHOTO_URI);
// int emailIDx
// =cursor.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA);
cursor.moveToFirst();
do {
HashMap<String, String> hashMap = new HashMap<String, String>();
name = cursor.getString(nameIdx);
phoneNumber = cursor.getString(phoneNumberIdx);
image = cursor.getString(photoIdIdx);
// email=cursor.getString(emailIDx);
if (!phoneNumber.contains("*")) {
hashMap.put("name", "" + name);
hashMap.put("phoneNumber", "" + phoneNumber);
hashMap.put("image", "" + image);
// hashMap.put("email", ""+email);
hashMapsArrayList.add(hashMap);
}
} while (cursor.moveToNext());
} catch (Exception e) {
e.printStackTrace();
} finally {
if (cursor != null) {
cursor.close();
}
}
myAdapter = new MyAdapter();
listView.setAdapter(myAdapter);
myAdapter.notifyDataSetChanged();
}
});
}
private class MyAdapter extends BaseAdapter
{
@Override
public int getCount() {
// TODO Auto-generated method stub
return hashMapsArrayList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return hashMapsArrayList.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder viewHolder;
convertView = getLayoutInflater().inflate(R.layout.itemlist, null);
viewHolder = new ViewHolder();
if (convertView != null) {
viewHolder.textView_Name = (TextView) convertView
.findViewById(R.id.textView_name);
viewHolder.textView_Number = (TextView) convertView
.findViewById(R.id.textView_number);
viewHolder.imageView = (ImageView) convertView
.findViewById(R.id.imageView_user);
// viewHolder.textView_Email=(TextView)
// convertView.findViewById(R.id.textView_email);
viewHolder.textView_Name.setText(hashMapsArrayList
.get(position).get("name"));
viewHolder.textView_Number.setText(hashMapsArrayList.get(
position).get("phoneNumber"));
// viewHolder.textView_Email.setText(hashMapsArrayList.get(position).get("email"));
String string_imageCheck = hashMapsArrayList.get(position).get(
"image");
if (string_imageCheck.equalsIgnoreCase("null")) {
viewHolder.imageView
.setImageResource(R.drawable.ic_launcher);
} else {
viewHolder.imageView
.setImageURI(Uri.parse(hashMapsArrayList.get(
position).get("image")));
}
}
return convertView;
}
class ViewHolder {
// TextView textView_Email;
TextView textView_Name;
TextView textView_Number;
ImageView imageView;
}