悬浮窗与Home Back事件
来源:互联网 发布:数据运营的书 编辑:程序博客网 时间:2024/06/03 22:55
搜悬浮窗可以搜到很多方法,但针对Home 、 back 事件具体的很少。
最近公司让我在做这方面的功能,集中众人力量,受益匪浅啊。
简单介绍吧,悬浮窗接收不到Home监听;back也不能直接给悬浮窗,试过一些博客的做法,view.setKeyEventListener处理是不成功的。
home思路:
要想启动悬浮窗时接收到home的监听,需要同时启动一个activity,将home监听交给activity,监听时消失掉悬浮窗。否则不用想通过按home消失悬浮窗。
当然有人问了,那写的功能直接写在activity就行了呗。我们公司的规定,尽量少写activity,少动manifest文件。我这种小菜鸟,还不到能动这些组件的权利,能规避就规避。
back思路:
悬浮窗的view用的xml文件,线性布局或相对布局等,要重写几个方法 public boolean dispatchTouchEvent(MotionEvent event) {} 、public boolean dispatchKeyEvent(KeyEvent event) {}等
而调setKeyEventListener()方法的主体,必须是重写过上面方法的布局的id转化:重写布局类 layout = (重写布局类) inflater.inflate(R.layout.view_float, null);
layout.setKeyEventListener(new KeyEventListener() {
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
return false;
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
return false;
}
@Override
public boolean onBackPressed() {
return false;
}
});
public interface KeyEventListener {
boolean onKeyDown(int keyCode, KeyEvent event);
boolean onKeyUp(int keyCode, KeyEvent event);
boolean onBackPressed();
}
如此才会成功。
刚刚从公司大牛处得知,长按home进入进程时让悬浮窗消失更麻烦,我在研究中
下面链接是研究的一个文章:
http://blog.csdn.net/harhy/article/details/8724779
- 悬浮窗与Home Back事件
- android back/home 键事件
- Back 键与Home键
- Back 键与Home键
- Android手机Home键/Back回退键事件
- Android home和back事件处理
- back home
- back home
- Back Home!
- Back 键与Home键的区别
- KeyEvent系统事件模拟(Home键,Back键等)
- Android中Back键与Home键的区别
- Android中Back键与Home键的区别
- Android HOME键,BACK键的捕获与响应
- Android -- home键与back键对activity的影响
- Android HOME键,BACK键的捕获与响应
- 浅析WPhone、Android的Back与Home键
- Android Back键与Home键的监听
- LeetCode -- 最大连续乘积子序列
- Windows批处理常用符号
- Umbrella Header for Module Bolts does not include header 'XXXXXX.h'?
- ImageView绑定网络图片并保存图片本地 新开线程绑定
- extjs 去除字符串两边的空格:
- 悬浮窗与Home Back事件
- 中文化和国际化问题权威解析之三:Java中文问题分析
- 错误收集(一)
- Apache2.4开启GZIP功能
- c#的js调用后台多维数组
- IOS-内存分区
- new 和malloc的区别
- EXT 控制tabs 打开的数量! - 疯狂秀才 - 博客园
- 2007 word打开无响应