안드로이드 개발 질문/답변
(글 수 45,052)
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
list = new ArrayList<HashMap<String,Object>>();
listView = (ListView) findViewById(R.id.ListViewMain);
String[] projection = new String[] {ContactsContract.CommonDataKinds.Phone._ID, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, ContactsContract.CommonDataKinds.Phone.NUMBER };
cursor = this.getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
projection, null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME +" ASC")
int idCol = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone._ID);
int nameCol = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME);
int numCol = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
while(cursor.moveToNext()){
HashMap<String,Object> item = new HashMap<String, Object>();
item.put("id", cursor.getString(idCol));
item.put("name", cursor.getString(nameCol) );
item.put("tel", cursor.getString(numCol) );
list.add(item);
}
cursor2 = getContentResolver().query(ContactsContract.Data.CONTENT_URI, new String[]{ContactsContract.CommonDataKinds.Photo.DATA15},null, null,null);
photoCol = cursor2.getColumnIndex(ContactsContract.CommonDataKinds.Photo.DATA15);
bt = new Bitmap[cursor2.getCount()];
Log.i("S",photoCol+"");
int i=0;
while(cursor2.moveToNext()){
byte[] data = cursor2.getBlob(photoCol);
if(data!=null){
bt[i] = BitmapFactory.decodeByteArray(data, 0, data.length);
}else{
bt[i] = BitmapFactory.decodeResource(getResources(), R.drawable.ic_menu_contact);
}
i++;
}
listView.setAdapter(new CustomAdapter(getApplicationContext(), R.layout.customview));
}
이런식으로 photo, 전화번호 ,이름을 불러왓는데요
[전화번호,이름] 과 photo 를 어떻게 매칭 해야할지.. 사진 순서가 지 마음대로 나오네요..ㅠ_ㅠ
이건 뭐 어떻게 해야할지 모르겠네요... 부탁드립니다........ㅠ_ㅠ 


