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. sql server time(7) 默认值

    语句为 ALTER TABLE dbo.YourTable ADD CONSTRAINT DF_TimeDefault DEFAULT '00:00:00' FOR YourTimeColumn 比如 ...

  2. mysql中int、bigint、smallint 和 tinyint的区别与长度

    各种整形,总结留作参考. bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为 ...

  3. Hbuider sass配置 webstorm scss配置

    --no-cache %FileName% ../css/%FileBaseName%.css   sass编译后保存到css目录下 webstorm scss配置 C:\Ruby22-x64\bin ...

  4. eas之kdtable格式化

    设置表.列.行或单元的格式化字符串 // 设置表table.getStyleAttributes().setNumberFormat(formatString); // 设置列column.getSt ...

  5. phpMyAdmin使用教程

    ---恢复内容开始--- wamp中自带了管理MySQL的phpMyAdmin,可用来本机测试,服务器维护,虚拟主机用户管理MySQL. 登录需记住servername,username,passwo ...

  6. onunload与onbeforeunload事件解析 标签: 浏览器 2017-04-10 09:46 45人阅读 评论(0)

    注:只测试了chrome和IE浏览器的表现情况 onunload事件 //JS Document window.onunload = onunload_message; function onunlo ...

  7. 阿里云oss用做文件存储工具类

    package com.fsk.fsksystem.util; import java.io.IOException; import java.io.InputStream; import java. ...

  8. 生成PW配置和BFD配置

    保存在配置文件中 def Main(): buf = '' f = open('pw.cfg','w') for i in range(2016): pwid = str(102 + i) buf + ...

  9. codevs——T1169 传纸条

    http://codevs.cn/problem/1169/  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 De ...

  10. GitHub分支项目不支持搜索问题解决:Sorry, forked repositories are not currently searchable.

    错误如下: 在GitHub上的项目,如果是分支项目的星星数没有超过父项目,就不会去索引从而不会进行代码搜索. 解决方法: 1.要在搜索结果中包含分支,需要添加fork:true或fork:only查询 ...