안드로이드 개발 질문/답변
(글 수 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 를 어떻게 매칭 해야할지.. 사진 순서가 지 마음대로 나오네요..ㅠ_ㅠ 이건 뭐 어떻게 해야할지 모르겠네요... 부탁드립니다........ㅠ_ㅠ