startActivityForResult 函数中的 PICK_CONTACT 参数是什么?
What is PICK_CONTACT argument in startActivityForResult function?
我有一个 Android 拨号器应用程序,我想在其中打开联系人。我从 Stack Overflow 本身获取了代码。但是startActivityForResult
函数中有一个参数,PICK_CONTACT
。它显示错误。
else if(id == R.id.action_contacts){
Intent i = new Intent(Intent.ACTION_PICK,ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(i, PICK_CONTACT);
}
而on ActivityResult
函数是这样的
public void onActivityResult(int reqCode, int resultCode, Intent data) {
super.onActivityResult(reqCode, resultCode, data);
switch (reqCode) {
case (PICK_CONTACT) :
if (resultCode == Activity.RESULT_OK) {
Uri contactData = data.getData();
Cursor c = managedQuery(contactData, null, null, null, null);
if (c.moveToFirst()) {
String name = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
// TODO Fetch other Contact details as you want to use
}
}
break;
}
}
请帮忙纠正这个错误。
这是一个请求代码。调用 startActivityForResult
时,您需要传入一个参数来标识您的请求。稍后在 onActivityResult
中使用相同的整数值来检查您从哪个请求返回。
您应该在 activity.
的顶部声明此代码以及任何其他类似的请求代码
static final int PICK_CONTACT = 1; // requestCode for Contact Picker intent
可以在此处找到更多详细信息:https://developer.android.com/training/basics/intents/result.html
我有一个 Android 拨号器应用程序,我想在其中打开联系人。我从 Stack Overflow 本身获取了代码。但是startActivityForResult
函数中有一个参数,PICK_CONTACT
。它显示错误。
else if(id == R.id.action_contacts){
Intent i = new Intent(Intent.ACTION_PICK,ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(i, PICK_CONTACT);
}
而on ActivityResult
函数是这样的
public void onActivityResult(int reqCode, int resultCode, Intent data) {
super.onActivityResult(reqCode, resultCode, data);
switch (reqCode) {
case (PICK_CONTACT) :
if (resultCode == Activity.RESULT_OK) {
Uri contactData = data.getData();
Cursor c = managedQuery(contactData, null, null, null, null);
if (c.moveToFirst()) {
String name = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
// TODO Fetch other Contact details as you want to use
}
}
break;
}
}
请帮忙纠正这个错误。
这是一个请求代码。调用 startActivityForResult
时,您需要传入一个参数来标识您的请求。稍后在 onActivityResult
中使用相同的整数值来检查您从哪个请求返回。
您应该在 activity.
的顶部声明此代码以及任何其他类似的请求代码static final int PICK_CONTACT = 1; // requestCode for Contact Picker intent
可以在此处找到更多详细信息:https://developer.android.com/training/basics/intents/result.html