当前位置: 代码迷 >> 移动开发 >> QuickContactBadge 联系人效能控件
  详细解决方案

QuickContactBadge 联系人效能控件

热度:1740   发布时间:2013-02-26 00:00:00.0
QuickContactBadge 联系人功能控件

一、简介
?? ?QuickContact是为了应用程序能够快速方便的访问联系人,并且快速的运用联系人的信息执行相应操作而设计的。最常见的在Contacts应用程序中如下图所示:

?? ?在Activity中存在一个图标,点击该图标后弹出一个窗口,窗口中会有几个图标,不同的图标表示针对该联系人进行的不同操作,比如打电话,发短信,发送邮件,进入主页等等。图标的显示和不显示取决于该联系人是否存在该种操作相关的信息。比如,如果该联系人中如果存在邮箱的话,就可以出现发送邮件的图标,否则就不会出现。


二、在自己的应用程序中应用QuickContact
?? ?在自己的程序中加入QuickContact十分方便,可以用Framework中的组件QuickContactBadge。
?? ?比如,我们创建一个Activity,设置它的layout如下:

  1. <LinearLayout?xmlns:android="http://schemas.android.com/apk/res/android"?
  2. ??????????????android:orientation="vertical"?
  3. ??????????????android:layout_width="fill_parent"?
  4. ??????????????android:layout_height="fill_parent"?
  5. ????????>?
  6. ????<QuickContactBadge?
  7. ????????????android:id="@+id/badge_small"?
  8. ????????????android:layout_width="wrap_content"?
  9. ????????????android:layout_height="wrap_content"?
  10. ????????????android:src="@drawable/icon">?
  11. ????</QuickContactBadge>?
  12. </LinearLayout>?

?? ?Activity的onCreate代码如下:

  1. QuickContactBadge?smallBadge?=?(QuickContactBadge)?findViewById(R.id.badge_small);?
  2. smallBadge.assignContactFromEmail("winuxxan@gmail.com",?true);?
  3. smallBadge.setMode(ContactsContract.QuickContact.MODE_LARGE);?

?? ?主要还有一点,要在AndroidManifest中设置android.permission.READ_CONTACTS的权限,否则,不会弹出窗口,而是直接进入Contacts中的联系人详情界面。
?? ?运行效果如图:

?? ?由于本文不是针对QuickContactBadge的详细讲解,而是讲解它的实现方法,从而能够见贤思齐,设计出类似的功能。要了解QuickContactBadge的详细用法可以看Android文档,和google。