从联系人列表中选择联系人时获取0

时间:2014-07-25 12:22:21

标签: android android-contacts

我已经创建了一个应用程序,我希望用户从联系人列表中选择联系人并在EditText.But中显示它。当我的用户选择一个联系人时,我的编辑文本值只显示0.为什么这样? ?

代码

case R.id.bt_contacts:
                intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
                startActivityForResult(intent, 1);
                break; 

 public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == getActivity().RESULT_OK) {
            Uri contactData = data.getData();
            Cursor c = getActivity().getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);
            if (c.moveToFirst()) {
                contactNumber = c.getInt(c.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.NUMBER));
            }

            etMobile.setText("" + contactNumber);
        }
    }

1 个答案:

答案 0 :(得分:2)

我认为你应该从游标

获取字符串值
contactNumber = c.getString(c.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.NUMBER));