android UI进阶之弹窗的使用(2)--实现通讯录的弹窗效果

来源:未知 责任编辑:责任编辑 发表时间:2013-11-17 14:39 点击:

相信大家都体验过android通讯录中的弹窗效果。如图所示:

 \

android中提供了QuickContactBadge来实现这一效果。这里简单演示下。

首先创建布局文件:

<?xml version="1.0" encoding="utf-8"?><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"             android:layout_width="wrap_content"             android:layout_height="wrap_content"             android:src="@drawable/icon">     </QuickContactBadge> </LinearLayout>
很简单,在布局中添加一个QuickContactBadge组件即可。

在Activity中配置:

public class QuickcontactActivity extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        QuickContactBadge smallBadge = (QuickContactBadge) findViewById(R.id.badge);        // 从email关联一个contact        smallBadge.assignContactFromEmail("notice520@gmail.com", true);        // 设置窗口模式        smallBadge.setMode(ContactsContract.QuickContact.MODE_SMALL);    }}
注意加入读通讯录的权限

    <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>  

实现效果如图:

 \

但是这个组件局限性很大,弹出窗口中只能是一些contact操作。但是仔细一想,这样的操作并不难,不就是一个带动画的弹窗么。下面就来我们自己实现一个。

实现一个带动画的弹窗并不难,在我的之前一篇博客中有讲过弹窗PopupWindow的使用,不清楚弹窗的朋友可以去看下。在这里实现的难点主要有这些:

1.判断基准view在屏幕中的位置,从而确定弹窗弹出的位置以及动画。这是非常重要的一点,或许基准在屏幕上方,那么就要向下弹出。

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Android 完全退出程序
  • 原创:Android应用开发-Andorid歌词秀,含源码
  • android 屏幕保护
  • Android手机软件汉化教程---第四课 dex文件汉化
  • 众多Android 开源项目推荐,给力工作给力学习
  • Android Audio代码分析4
  • Android得到已安装的应用程序信息!
  • Android开发者指南(29) —— USB Host and Accessory
  • Android成长的幕后推手:工程师鲁宾
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1