Android中Back键与Home键的区别
来源:互联网 发布:2017网络项目 编辑:程序博客网 时间:2024/04/30 13:54
转自: Android中Back键与Home键的区别
KeyEvent.KEYCODE_BACK
back键默认行为是finish处于前台的Activity,将该task从栈中弹出。即Activity的状态为Destroy状态为止,再次启动该Activity是从onCreate开始的(不会调用onSaveInstanceState方法)。
KeyEvent.KEYCODE_HOME
Home键默认是stop前台的Activity即状态为 onStop为止而不是Destroy,若再次启动它,会调用onSaveInstanceState方法,不过个人认为不排除因为内存而被回收的可能,这只能将这个task保存到栈中。保持上次Activity的状态则是从 OnRestart开始的---->onStart()--->onResume()。
if (keyCode == KeyEvent.KEYCODE_HOME) { // If a system window has focus, then it doesn't make sense // right now to interact with applications. WindowManager.LayoutParams attrs = win != null ? win.getAttrs() : null; if (attrs != null) { final int type = attrs.type; if (type == WindowManager.LayoutParams.TYPE_KEYGUARD || type == WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG) { // the "app" is keyguard, so give it the key return false; } final int typeCount = WINDOW_TYPES_WHERE_HOME_DOESNT_WORK.length; for (int i=0; i<typeCount; i++) { if (type == WINDOW_TYPES_WHERE_HOME_DOESNT_WORK[i]) { // don't do anything, but also don't pass it to the app return true; } } } if (down && repeatCount == 0) { if (!keyguardOn) { mHandler.postDelayed(mHomeLongPress, ViewConfiguration.getGlobalActionKeyTimeout()); } mHomePressed = true; } return true; }
屏蔽HOME键的做法
@Override public void onAttachedToWindow() { this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); super.onAttachedToWindow(); }}
- Android中Back键与Home键的区别
- Android中Back键与Home键的区别
- Back 键与Home键的区别
- Android的back键和home键的区别
- Android home键和back键区别
- Android home键和back键区别
- Android home键和back键区别
- Android home键和back键区别
- Android home键和back键区别
- Android home键和back键区别
- Android home键和back键区别
- Android home键和back键区别
- Android BACK键和HOME键的区别
- Android 中Home键和Back键监听的区别以及代码实现(附源代码)
- Android HOME键,BACK键的捕获与响应
- Android -- home键与back键对activity的影响
- Android HOME键,BACK键的捕获与响应
- Android Back键与Home键的监听
- 蛇形线走线注意要点
- Discuz论坛防止广告机的方法
- 关于设置X-UA-Compatible来设置IE浏览器兼容模式时无效问题
- Win7上配置Cocos2dx开发环境
- spring+springmvc+openjpa的逆向工程整合出错
- Android中Back键与Home键的区别
- 第五周上级项目三
- VB中的 命名参数
- (转)内联函数
- 2013年3月23号竞赛题目一 平衡负载
- 黑马程序员————学习日记【2】 【Java编程基础1】
- Thinking in Java之接口回调
- Uva 10048 - Audiophobia
- 第五周上级项目四