问题描述
|
android手机上的联系人具有“过滤联系人”这样的设置,该设置使用户可以设置“仅显示具有电话号码的联系人”和“仅显示在线的联系人”之类的设置,以及要显示的联系人(例如,仅电话,电话和Google等)。
这样做时
Intent intent = new Intent(Intent.ACTION_PICK);
intent.setType(ContactsContract.Contacts.CONTENT_TYPE);
startActivityForResult(intent,PICK_CONTACT);
有什么办法可以将这些过滤器应用到联系人列表?默认情况下,它似乎返回所有内容。如果不能,是否可以通过某种方式访问这些设置以查看其设置,因此我可以建立自己的联系人选择器列表以匹配电话用户如何设置其默认设置?这仅适用于Android 2及更高版本。
(理想的选择是一种调用联系人选择器的方法,该方法使用户也可以从那里设置过滤器。)
解决方法
我认为,如果您像此处显示的那样将URI传递给意图,则应该可以应用过滤器。因此,您可以执行以下操作:
Intent intent = new Intent(Intent.ACTION_PICK,PhoneLookup.CONTENT_FILTER_URI);
intent.setType(ContactsContract.Contacts.CONTENT_TYPE);
startActivityForResult(intent,PICK_CONTACT);