ActivityGroup中onBackPressed无效
来源:互联网 发布:淘宝标题优化技巧 编辑:程序博客网 时间:2024/05/22 01:45
在项目中,主页使用到了ViewPager和LocalActivityManager的组合。也就是ActivityGroup,但是在做快速两次点击退出应用的时候发现一个问题:
在ActivityGroup也就是主Activity中在点击back键的时候,并不会调用到onBackPressed()方法和onKeyDown()
解决办法:
- 在主Acitvity中调用:
private long lastBackTime = 0L; @Override public boolean dispatchKeyEvent(KeyEvent event) { if (event.getKeyCode() == KeyEvent.KEYCODE_BACK &&event.getAction()==KeyEvent.ACTION_DOWN){ long curTime = System.currentTimeMillis(); if(curTime - lastBackTime < 1000){ super.onBackPressed(); return true; }else{ SingleToast.toastShow(this, "再次点击退出应用"); lastBackTime = curTime; } return false; } return super.dispatchKeyEvent(event); }
- 在每一个子Activity中调用:
private long lastBackTime = 0L; @Override public void onBackPressed() { long curTime = System.currentTimeMillis(); if(curTime - lastBackTime < 1000){ super.onBackPressed(); }else{ SingleToast.toastShow(this, "再次点击退出应用"); lastBackTime = curTime; } }
- 每一个子Activity中调用:
private long lastBackTime = 0L; @Override public void onBackPressed() { long curTime = System.currentTimeMillis(); if(curTime - lastBackTime < 1000){ getParent().onBackPressed(); }else{ SingleToast.toastShow(this, "再次点击退出应用"); lastBackTime = curTime; } }
我是在ViewPager加LocalActivityManager的组合下做的实验,可能在使用TabActivity的时候会有些出入。但是大体上应该是差不多的。
参考:
https://segmentfault.com/a/1190000004406861
http://stackoverflow.com/questions/2796050/key-events-in-tabactivities/6511638#6511638
http://blog.csdn.net/johnny901114/article/details/7822878
0 0
- ActivityGroup中onBackPressed无效
- 关于重载OnBackPressed无效的解决方案
- onBackPressed
- onBackPressed
- 监听Back键, onBackPressed()和onkeyDown()都无效
- ActivityGroup中切换Activity
- ActivityGroup
- activitygroup
- ActivityGroup
- ActivityGroup
- ActivityGroup
- ActivityGroup
- ActivityGroup
- ActivityGroup
- ActivityGroup
- 【ActivityGroup】中按键监听失灵!
- Activity/Fragment/TabActivity/ActivityGroup bindSrvice绑定服务无效
- 重写系统返回键方法onBackPressed()无效(super的位置)
- centos 7 下安装 mongodb
- 【机器学习】PCA的数学原理
- AndroidStudio中如何引入aar文件和jar文件
- 关于HTTP和HTTPS的权限开关
- Spring 的 BeanPostProcessor接口实现
- ActivityGroup中onBackPressed无效
- Python Tornado Echarts 之坑一
- js实现进度条(不带百分比)
- 从操作系统设计角度看分页机制
- git日志导出为csv格式文件、excel格式文件
- Java 内存模型及GC原理算法
- Oracle数据库限定特定用户 特定IP 登录
- RxJava 1.2.1主要API的使用Demo
- angular前后端交互