PopupWindow响应返回键的问题

转载 2015年07月08日 14:19:20

 假设情景是这样的:在一个Activity中弹出一个PopupWindow,要求在按返回键时关闭该PopupWindow。

    

 如果该PopupWindow是无焦点的(默认情况),那么可以在Activity中响应返回键(onBackPressed),然后关闭它。

  

 如果该PopupWindow是有焦点的,那么在它弹出来之后,所有的按键和触摸事件都会被它截获,包括返回键。

 

 让PopupWindow获得焦点有两种方法,第一种是在创建的时候指定,第二种是在创建之后,调用它的setFocusable方法指定。

 

 但是仅仅使PopupWindow获得焦点还不行,此时它不响应返回键,也就是说,按返回键的时候PopupWindow并不会关闭。

  

  如果需要PopupWindow响应返回键,那么必须给PopupWindow设置一个背景才行,下面是通常的做法:

setFocusable(true);
ColorDrawable dw = new ColorDrawable(0x00000000);
setBackgroundDrawable(dw);


关于半透明的popupWindow,可以查看这篇文章:http://blog.csdn.net/harryweasley/article/details/41283129


相关文章推荐

Android 中 PopupWindow 响应返回键并关闭的问题

PopupWindow 跟我们的 Activity 不一样,因为我们在构造 PW 的时候往往不是继承来的,而是 new 出来的。 所以不能使用重写 PW 的 onKeyDown() 之类的方法来截获...

PopupWindow监听返回键

  • 2014年08月21日 11:37
  • 104KB
  • 下载

Android中PopupWindow点击窗口之外和返回键消失,界面锁定的实现

这几天做谷居网的android应用到混天暗地的程度了。。 做一个加入灵感集的操作,需要用户注册,弹出这么一个PopupWindow的提示框。 要实现的功能很简单,点击稍后提醒以及键盘的返回...

PopupWindow返回键和点击外部无法消失

PopupWindow 点击外部和返回键无法消失

wp8下cocos2dx3.2的物理返回键(back)事件响应的问题

最近在做cocos2dx3.2项目给wp8平台上的移植,由于是第一次做,其中遇到了一些不少问题,而项目中对于物理返回键的响应就是一个我解决了较久的问题,之前在网上查资料,这方面的比较少,今天把这个写出...

ionic-键盘覆盖输入框和返回键问题解决方案

在开发一款优秀的产品时,用户体验是至关重要的,友好的,符合思维逻辑的交互体验是作为一款产品的首要印象 最近在用ionic开发项目时,就遇到了两个关于键盘的问题 1、在一个页面的底部如果存在一个的元素...

[Android] 更好的解决 "返回键或取消时自动回调DatePickerDialog的方法onDateSet()" 的问题

自从忙完工作变动的事情后好久没写博了, 内心愧疚啊.... 说好的坚持学习呢... TAT 好吧, 回归正题.  用过 Android自带的DatePickerDialog的默认样式是这样的...
  • stzy00
  • stzy00
  • 2016年01月21日 16:03
  • 1460

内置浏览器返回键重定向问题解析

1、目前android端物理硬件返回键与左上角返回键处理基本一致,都是调用webview中的goback方法。       好处:可以满足大部分的网页后退与关闭。       不足之处:个别网页会...

关于android 多个Activity应用程序按返回键退出程序问题

近期正在学习Android,为产品写个工厂测试软件,遇到比较棘手的问题,就是关于有多个Activity的android应用程序按返回键退出的问题,在网络上搜索了很多文章,有如下四种方法: ...

Android 设置系统的返回键 和软键盘获取焦点问题

很多朋友出现过这样的一个问题,当底部弹出评论框时,有几个问题,一个是软件盘弹出时怎么让焦点在输入框,关于这个问题,本人也是遇到过,解决了很久,有的是在布局设置或者代码里setFocusable(tru...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PopupWindow响应返回键的问题
举报原因:
原因补充:

(最多只允许输入30个字)