我已经创建了一个应用程序,我希望用户从联系人列表中选择联系人并在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);
}
}
答案 0 :(得分:2)
我认为你应该从游标
获取字符串值contactNumber = c.getString(c.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.NUMBER));