首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓-使用ContactPicker来获取号码和姓氏?

安卓-使用ContactPicker来获取号码和姓氏?
EN

Stack Overflow用户
提问于 2013-06-03 06:26:00
回答 1查看 91关注 0票数 0

使用ContactPicker获取联系人的电话号码和显示名称似乎很简单-使用如下代码

代码语言:javascript
复制
Intent intent = new Intent(Intent.ACTION_PICK, 
ContactsContract.CommonDataKinds.Phone.CONTENT_URI);
startActivityForResult(intent, REQUEST_PICK_CONTACT);

但是,这样就得到了电话号码和显示名称,但是我似乎找不到任何合理的方法来获取姓氏/名字。对于从startActivityForResult返回的内容,联系人本身的ID似乎不可用。我猜你可以根据显示的姓名或号码重新搜索,以找到联系人,但这似乎很尴尬……我只是在想有一种更直接的方法,但这里可能是错误的。

EN

回答 1

Stack Overflow用户

发布于 2013-06-03 06:40:11

联系人选择器返回所请求的联系人的URI。你需要在这个URI上重新查询,你可以得到你想要的任何东西。

代码语言:javascript
复制
@Override
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 =  getContentResolver().query(contactData, null, null, null, null);
        if (c.moveToFirst()) {
         // TODO Whatever you want to do with the selected contact
        }
      }
      break;
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16887903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档