3

連絡先から 2 番目の番号を取得しようとしています。今、最初の数字を取得できます。特定の連絡先の 2 番目または 3 番目の番号を取得したいと考えています。これは可能ですか?

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    if(resultCode == RESULT_OK){
        if(requestCode == RQS_PICKCONTACT){
            Uri returnUri = data.getData();
            Cursor cursor = getContentResolver().query(returnUri, null, null, null, null);

            if(cursor.moveToNext()){
                int columnIndex_ID = cursor.getColumnIndex(ContactsContract.Contacts._ID);
                String contactID = cursor.getString(columnIndex_ID);

                int columnIndex_HASPHONENUMBER = cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER);
                String stringHasPhoneNumber = cursor.getString(columnIndex_HASPHONENUMBER);

                if(stringHasPhoneNumber.equalsIgnoreCase("1")){
                    Cursor cursorNum = getContentResolver().query(
                            ContactsContract.CommonDataKinds.Phone.CONTENT_URI, 
                            null, 
                            ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=" + contactID, 
                            null, 
                            null);

                    //Get the first phone number
                    if(cursorNum.moveToNext()){
                        int columnIndex_number = cursorNum.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
                        String stringNumber = cursorNum.getString(columnIndex_number);
                        textPhone.setText(stringNumber);
                    }

お知らせ下さい!

ありがとう!

4

1 に答える 1

2

現在のコードは最初の電話番号のみを提供し、すべての電話番号をカーソルで繰り返すだけで、指定された連絡先のすべてのサブ電話番号を提供します

while (cursorNum.moveToNext()) {
    int columnIndex_number = cursorNum.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
    String stringNumber = cursorNum.getString(columnIndex_number);
    Log.i(TAG,"Contact number "+stringNumber);

    // do your desired task here. 

}
于 2013-01-24T11:12:10.860 に答える