我正在开发带有标签的软电话,我的问题是我想要点击一个按钮选择一个联系人,一切正常我正在开发这个没有标签.i.e。没有标签的应用程序,我发现这里有很多这样的问题,但没有一个解决我的问题。
这里是选择联系人的代码
private static final int PICK_CONTACT = 0;
pickContactButton.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view)
{
Intent intentContact = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
getParent().startActivityForResult(intentContact, PICK_CONTACT);
}
});
这里是onActivityResult
@Override
public void onActivityResult(int reqCode, int resultCode, Intent data){
System.out.println("inside onActivityResult........");
super.onActivityResult(reqCode, resultCode, data);
switch(reqCode){
case (0):
if (resultCode == Activity.RESULT_OK){
Uri contactData = data.getData();
Cursor c = managedQuery(contactData, null, null, null, null);
if (c.moveToFirst()){
String id = c.getString(c.getColumnIndexOrThrow(ContactsContract.Contacts._ID));
String hasPhone =
c.getString(c.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));
if (hasPhone.equalsIgnoreCase("1")){
Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID +" = "+ id,null, null);
phones.moveToFirst();
String cNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
// Toast.makeText(getApplicationContext(), cNumber, Toast.LENGTH_SHORT).show();
//setCn(cNumber);
System.out.println("cNumber: " + cNumber);
}
}
}
}
}
问题是startActivityForResult从未调用过onActivityResult
答案 0 :(得分:0)
PICK_CONTACT
常数的值是多少?确保PICK_CONTACT = 0
。
答案 1 :(得分:-1)
您是否覆盖方法onActivityResult()
?
如果没有,请确保在方法中添加@Override
注释。