如何使用intent.ACTION_PICK打开系统联系人并选择一些联系人,但不只是选择一个?

时间:2013-11-21 07:09:09

标签: java android

我的代码:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_PICK);
intent.setData(ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, REQUEST_CONTACT);

这将打开系统联系人,但我只能选择一个联系人。我想以这样的方式打开它,我可以选择我想要的物品并返回。

谢谢!

2 个答案:

答案 0 :(得分:0)

您将无法使用ACTION_PICK意图选项执行此操作。这是查询的解决方案:https://stackoverflow.com/a/7856444840/14765699

答案 1 :(得分:0)

您将无法使用ACTION_PICK intent选项执行此操作。要实现此目的,您需要使用自定义ListView,将查询生成的联系人发送给联系人内容提供商。

如果您想使用Intent.ACTION_PICK意图,则需要告诉用户一次选择一个。

另外

使用自定义ListView有几种方法可以做到这一点。旧的方式(与大多数手机兼容)有点冗长,但很幸运,这里有一个很好的教程,可以准确描述您正在寻找的内容(联系人列表,自定义ListView中的复选框)。

使用API​​ 5及更高版本,有一个ContactsContract类可以帮助获取联系人列表。有关如何使用它的示例代码,请查看android的ContactManager示例应用程序,特别是ContactManager类和populateContactList()方法。

希望它会有所帮助