android学习之-home和back键的监听

来源:互联网 发布:混合高斯模型的em算法 编辑:程序博客网 时间:2024/06/04 17:42

//监听home键和back键

 @Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
  if(keyCode == KeyEvent.KEYCODE_HOME) {

//做自己想要做的事情

//当监听home之后 如果在按返回键的时候,就不会有home键之前的效果了,底下这个是使之返回到桌面上。
   Intent mHomeIntent =  new Intent(Intent.ACTION_MAIN, null);
   mHomeIntent.addCategory(Intent.CATEGORY_HOME);
   mHomeIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
   startActivity(mHomeIntent);

//做事情
   Config.setHomeClick(true);
  }

//因为将back键也给取消监听了,所以得重写这个back的监听的方法,要不返回键就失去效果了。
  if(keyCode == KeyEvent.KEYCODE_BACK) {
   onBackPressed();
  }
  return false;
 }

 

//不管是home键还是back键都必须有地下这段代码否者就不会监听到home键。

@Override
public void onAttachedToWindow() {
  this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 
  super.onAttachedToWindow();
}