点击一个popupwindow窗口之外的区域popupwindow消失,带来的问题!!

popupwindow窗口之外的区域popupwindow消失 , 以前说过需要设置:

mPopupWindow.setFocusable(true); // 设置PopupWindow可获得焦点
mPopupWindow.setTouchable(true); // 设置PopupWindow可触摸
mPopupWindow.setOutsideTouchable(true); // 设置非PopupWindow区域可触摸
mPopupWindow.setBackgroundDrawable(getResources().getDrawable(R.drawable.chooseballbg));//
// 这句话必须有,否则
// // 按返回键
// // popwindow不能消失 或者加入这句话
// ColorDrawable dw = new ColorDrawable(-00000);
// mPopupWindow.setBackgroundDrawable(dw);

但是:  加入这些之后,我给Popwindow加了动画的,出现一个恶心的问题:就是popwindow在执行动画过程中,如果Popwindow上有button类似的控件,控件有背景色的变化,就会带来非常恶心的现象: 点击的控件的那一块竟然出现漏洞了,透明的一块,这就是

mPopupWindow.setBackgroundDrawable(getResources().getDrawable(R.drawable.chooseballbg));//

带来的恶果!!  咋办呢?  我这样做的:这句话我不用了!!  用别的方法来实现popwindow的dismiss。

用这种方法:就是利用popwindow内部的空间加入按键事件!!

这样的:

LinearLayout layouttemp = (LinearLayout) view
.findViewById(R.id.linearlayout_blank);
layouttemp.setFocusable(true);
layouttemp.setFocusableInTouchMode(true);
layouttemp.setOnKeyListener(new OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
// 手机键盘上的返回键
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
mPopupWindow.dismiss();
break;
}
return false;
}
});

即可!!

PopuWindow_2的更多相关文章

随机推荐

  1. PHP的一些要点

    1.用户评论的内容应当使用htmlspecialchars()函数进行过滤,如htmlspecialchars($_POST['content']);再写入数据库,防止用户评论中含有JS和HTML代码 ...

  2. 浅谈开源项目Android-Universal-Image-Loader(Part 3.1)

    本文转载于:http://www.cnblogs.com/osmondy/p/3266023.html 浅谈开源项目Android-Universal-Image-Loader(Part 3.1) 最 ...

  3. springMvc源码学习之:spirngMvc的拦截器使用

    SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理.比如通过它来进行权限验证,或者是来判断用户是否登陆,或者是像12306 那 ...

  4. Python 基础语法(二)

    Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...

  5. oracle_dblink配置

    说明:一下是未配置本地服务的dblink. 前提:   授权>  grant create public database link,create database link to myAcco ...

  6. 关于web.config中customErrors

    <customErrors>节点用于定义一些自定义错误信息的信息.此节点有Mode和defaultRedirect两个属性,其中defaultRedirect属性是一个可选属性,表示应用程 ...

  7. intellij idea +maven4+springmvc4搭建

    0.淘宝mave培训PPT http://www.open-open.com/doc/view/4058453cde4b429c82ff2807d8aa81f0 1.intellij创建空的maven ...

  8. 111个知名Java项目集锦,包括url和描述

    转:http://www.cnblogs.com/wangs/p/3282183.html 项目名称   项目描述 ASM Java bytecode manipulation framework A ...

  9. Hive(五):hive与hbase整合

    配置 hive 与 hbase 整合的目的是利用 HQL 语法实现对 hbase 数据库的增删改查操作,基本原理就是利用两者本身对外的API接口互相进行通信,两者通信主要是依靠hive_hbase-h ...

  10. Linux dirname $0 source if

    $SHELL gives the full path to your default shell. $0 gives the name of your current shell. dirname是一 ...