一、简介
QuickContact是为了应用程序能够快速方便的访问联系人,并且快速的运用联系人的信息执行相应操作而设计的。最常见的在Contacts应用程序中如下图所示:
在Activity中存在一个图标,点击该图标后弹出一个窗口,窗口中会有几个图标,不同的图标表示针对该联系人进行的不同操作,比如打电话,发短信,发送邮件,进入主页等等。图标的显示和不显示取决于该联系人是否存在该种操作相关的信息。比如,如果该联系人中如果存在邮箱的话,就可以出现发送邮件的图标,否则就不会出现。
二、在自己的应用程序中应用QuickContact
在自己的程序中加入QuickContact十分方便,可以用Framework中的组件QuickContactBadge。
比如,我们创建一个Activity,设置它的layout如下:
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <QuickContactBadge
- android:id="@+id/badge_small"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:src="@drawable/icon">
- </QuickContactBadge>
- </LinearLayout>
Activity的onCreate代码如下:
- QuickContactBadge smallBadge = (QuickContactBadge) findViewById(R.id.badge_small);
- smallBadge.assignContactFromEmail("winuxxan@gmail.com", true);
- smallBadge.setMode(ContactsContract.QuickContact.MODE_LARGE);
主要还有一点,要在AndroidManifest中设置android.permission.READ_CONTACTS的权限,否则,不会弹出窗口,而是直接进入Contacts中的联系人详情界面。
运行效果如图:
由于本文不是针对QuickContactBadge的详细讲解,而是讲解它的实现方法,从而能够见贤思齐,设计出类似的功能。要了解QuickContactBadge的详细用法可以看Android文档,和google。