Android 电话号码选择器

发布于 2024-11-29 09:47:41 字数 460 浏览 3 评论 0原文

我想打电话给电话簿,让用户选择一个(或多个可选)电话号码(我只需要电话号码,而不需要整个联系人信息,因为我想让用户跳过自己写号码并选择一个)。这是我到目前为止发现的:

Intent contactPickerIntent = new Intent(Intent.ACTION_PICK,  
                    ContactsContract.Contacts.CONTENT_URI);  
startActivityForResult(contactPickerIntent, CONTACT_PICKER_RESULT);

这会返回一个选定的联系人,但它可能没有或有很多电话号码(而且我不需要全部电话号码。我只需要一个。我可以让用户使用 ListView 或Spinner,但我相信一定有一些 API,因为我手机上的消息应用程序有这样的选择器(嗯,可能会更舒服,但我认为它是一个 API,而不是消息应用程序)。

I want to call phones book to let user to pick one (or multiple optionally) phone numbers (I need only phone numbers and not the whole contacts info because I want to let the user to skip writing the number himself and pick one instead). This is what I found so far:

Intent contactPickerIntent = new Intent(Intent.ACTION_PICK,  
                    ContactsContract.Contacts.CONTENT_URI);  
startActivityForResult(contactPickerIntent, CONTACT_PICKER_RESULT);

This returns me a contact selected but then it might have no or many phone numbers (and I don't need them all. I need just one. I could let the user to choose it using ListView or Spinner but I believe there must be some API for that because Messages app on my phone has such picker (well, could be more comfortable but I assume it's an API and not the Messages app).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

℉服软 2024-12-06 09:47:41

这可以使用 API 实现,请参阅:
https://developer.android.com/guide/components/intents- common.html#联系人

让用户从列表中选择一条特定的信息
联系方式,例如电话号码、电子邮件地址或其他数据类型,
使用 ACTION_PICK 操作并将 MIME 类型指定为其中之一
下面列出的内容类型,例如 CommonDataKinds.Phone.CONTENT_TYPE
获取联系人的电话号码。

他们的示例意图片段:

    Intent intent = new Intent(Intent.ACTION_PICK);
    intent.setType(CommonDataKinds.Phone.CONTENT_TYPE);
    startActivityForResult(intent, REQUEST_SELECT_PHONE_NUMBER);

您可以在上面链接的文档中看到他们如何处理结果。

This is possible using the APIs, see:
https://developer.android.com/guide/components/intents-common.html#Contacts

To have the user select a specific piece of information from a
contact, such as a phone number, email address, or other data type,
use the ACTION_PICK action and specify the MIME type to one of the
content types listed below, such as CommonDataKinds.Phone.CONTENT_TYPE
to get the contact's phone number.

A snippet of their example intent:

    Intent intent = new Intent(Intent.ACTION_PICK);
    intent.setType(CommonDataKinds.Phone.CONTENT_TYPE);
    startActivityForResult(intent, REQUEST_SELECT_PHONE_NUMBER);

You can see how they handle the result in the docs linked above.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文