2014-07-09 16:23 1114人阅读 评论(0) 收藏 举报
 分类:
Andriod之路(72) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载请指明出处 :http://blog.csdn.net/hellohhj/article/details/37600469

主要介绍一下popupWindow的简单用法,包括在控件的上方、正上方、下方、正下方、左方、正左方、右方、正右方以及在屏幕中间显示等等。。。

希望对大家有帮助

主要代码如下:

  1. private void showPopUp(View v) {
  2. LinearLayout layout = new LinearLayout(this);
  3. layout.setBackgroundColor(Color.GRAY);
  4. TextView tv = new TextView(this);
  5. tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
  6. LayoutParams.WRAP_CONTENT));
  7. tv.setText("我最亲爱的。。。。。我最亲爱的。。。。。我最亲爱的。。。。。我最亲爱的。。。。。我最亲爱的。。。。。我最亲爱的。。。。。我最亲爱的。。。。。我最亲爱的。。。。。");
  8. tv.setTextColor(Color.WHITE);
  9. layout.addView(tv);
  10. popupWindow = new PopupWindow(layout, 250, 200);
  11. popupWindow.setFocusable(true);
  12. popupWindow.setOutsideTouchable(true);
  13. popupWindow.setBackgroundDrawable(new BitmapDrawable());
  14. int[] location = new int[2];
  15. v.getLocationOnScreen(location);
  16. int v_with = v.getWidth();
  17. int v_height = v.getHeight();
  18. // 屏幕中央
  19. popupWindow.showAtLocation(v, Gravity.CENTER, 0, 0);
  20. ;
  21. // // 上方
  22. // popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0],
  23. // location[1] - popupWindow.getHeight());
  24. // // 正上方
  25. // popupWindow.showAtLocation(v, Gravity.NO_GRAVITY,
  26. // location[0] + Math.abs((v_with - popupWindow.getWidth()) / 2),
  27. // location[1] - popupWindow.getHeight());
  28. // // 下方
  29. // popupWindow.showAsDropDown(v);
  30. // // 正下方
  31. // popupWindow.showAsDropDown(v,
  32. // Math.abs((v_with - popupWindow.getWidth()) / 2), 0);
  33. //
  34. // // 左方
  35. // popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0]
  36. // - popupWindow.getWidth(), location[1]);
  37. // //正左方
  38. // popupWindow.showAtLocation(v, Gravity.NO_GRAVITY, location[0]
  39. // - popupWindow.getWidth(), location[1]-Math.abs((v_height -
  40. // popupWindow.getHeight()) / 2));
  41. // // 右方
  42. // popupWindow.showAtLocation(v, Gravity.NO_GRAVITY,
  43. // location[0] + v.getWidth(), location[1]);
  44. // 正右方
  45. // popupWindow.showAtLocation(v, Gravity.NO_GRAVITY,
  46. // location[0] + v.getWidth(), location[1]-Math.abs((v_height -
  47. // popupWindow.getHeight()) / 2));
  48. }

下面附上源码地址 :http://download.csdn.net/detail/hellohhj/7612275

 
0
0
 
  相关文章推荐
 
查看评论
  暂无评论

 
 
您还没有登录,请[登录][注册]
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
 
 
 
 
    个人

(转载) popupWindow 指定位置上的显示的更多相关文章

  1. android学习——popupWindow 在指定位置上的显示

    先看效果图,免得浪费大家时间,看是不是想要的效果 . 直接上代码 ,核心方法. [java] view plaincopy private void showPopupWindow(View pare ...

  2. popupWindow 在指定位置上的显示

    先看效果图,免得浪费大家时间,看是不是想要的效果 . 直接上代码 ,核心方法. private void showPopupWindow(View parent) { if (popupWindow  ...

  3. 问题:asp.net 点击button按钮调到页面顶部;结果:asp.net点击一个按钮,使页面跳转到本面页上的指定位置

    asp.net点击一个按钮,使页面跳转到本面页上的指定位置 (2011-04-19 16:46:51) 转载▼ 标签: it   最近在做一个项目. 用到标题所说的功能. 实现方法: 1.在aspx中 ...

  4. $.messager.show扩展:指定位置显示

    扩展了个$.messager.showBySite,根据舍得的位置显示$.messager.show.代码如下: /** * 指定位置显示$.messager.show * options $.mes ...

  5. 【转载】C#使用InsertRange方法往ArrayList集合指定位置插入另一个集合

    在C#的编程开发中,ArrayList集合是一个常用的非泛型类集合,ArrayList集合可存储多种数据类型的对象.在实际的开发过程中,我们可以使用InsertRange方法在ArrayList集合指 ...

  6. 【转载】C#中string类使用Remove方法来移除指定位置的字符

    在C#的字符串操作过程中,有时候需要将字符串中指定位置的字符移除,此时就可能使用到字符串类string类中的Remove方法,此方法允许指定移除开始的开始的索引位置,以及移除的长度信息等,共有2个重载 ...

  7. 【转载】C#中使用List集合的Insert方法在指定位置插入数据

    在C#的List集合等数据类型变量中,我们可以使用List集合的Insert方法在指定的索引位置插入一个新数据,例如指定在List集合的第一个位置写入一个新数据或者在List集合的中间某个位置插入个新 ...

  8. postman上传excel,java后台读取excel生成到指定位置进行备份,并且把excel中的数据添加到数据库

    最近要做个前端网页上传excel,数据直接添加到数据库的功能..在此写个读取excel的demo. 首先新建springboot的web项目 导包,读取excel可以用poi也可以用jxl,这里本文用 ...

  9. 解决使用 Eruda 绑定 dom 未在指定位置显示问题

    前言 开发项目中,使用到 Eruda 打印控制台信息显示 文档:https://github.com/liriliri/eruda 安装 Eruda npm install eruda --save ...

随机推荐

  1. 02 java学习安装jdk及其环境配置

    SUN公司1995年正式推出的一款语言 其实之前,Sun公司1991年,James Gosling等人就开始开发Oak语言,希望用于控制嵌入有效电视交换盒,1994年更名为Java,之前来自 与jav ...

  2. 配置Jupyter

    前几天见同学有用Jupyter notebook的,有点喜欢,于是今天自己配了一下. Jupyter是一个非常好用编辑器,因为Jupyter notebook 不仅可以编写代码运行,并且可以直接在代码 ...

  3. Python学习笔记之异常处理

    1.概念 Python 使用异常对象来表示异常状态,并在遇到错误时引发异常.异常对象未被捕获时,程序将终止并显示一条错误信息 >>> 1/0 # Traceback (most re ...

  4. 图片base64格式转为file文件类型上传方法

    日常使用文件上传方式,都是通过input type='file'的文件选择框进行文件上传.但是会通过其他交互方式等到图片的base64格式进行上传.具体情况如下示意: 在项目开发中,需要进行照片采集, ...

  5. js对对象的校验技巧,随时更新

    js中,字符串长度用length. 若不确定一个Map里,是否存在某个对象,则用underfind 去校验

  6. springMVC @ModelAttribute功能

    @ModelAttribute功能:将数据模型回写到页面 如: public String validate(@Valid @ModelAttribute("user") User ...

  7. ExtJs之Ext.view.View

    要注意MODEL的定义和实例化的代码,注释掉的是老式的不兼容4.0以上的.而下面的定义才是新推荐的. 我网上可是查的了.是书上的代码老了. <!DOCTYPE html> <html ...

  8. spring5.0新特性

    spring5.0新特性 学习了:http://blog.csdn.net/u012562943/article/details/77449666 https://www.cnblogs.com/xu ...

  9. Java内部静态类与内部非静态类

    Java内部静态类与内部非静态类 把类看成一个属性,稍微容易理解一些:在main方法中,不会去直接引用一个非static的变量,对于类也一样. 学习了:http://blog.csdn.net/zer ...

  10. Android-黑科技-微信抢红包必备软件

                        黑科技微信抢红包 介绍: 本节类容和技术无太大关系.主要是个人认为比較好玩,年关将至,对于新起之秀微信红包.绝对是过春节首选.看到就是赚到,速速围观下载.眼下仅 ...