处男还是处女喔
可以先禁止Home键,再在onKeyDown里出来按键值,点击Home键的时候就把程序关闭 @Override
  public boolean onKeyDown(int keyCode, KeyEvent event)
  {
    // TODO Auto-generated method stub
    if(KeyEvent.KEYCODE_HOME==keyCode)
      android.os.Process.killProcess(android.os.Process.myPid());
    return super.onKeyDown(keyCode, event);
  }  @Override
  public void onAttachedToWindow()
  {
    // TODO Auto-generated method stub
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);   
    super.onAttachedToWindow();
  }  加权限禁止Home键
  <uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>

解决方案 »

  1.   

    恩呢 如果不禁止HOME键 会被系统自动捕获处理 你没有机会加自己的处理 
      

  2.   

     那,如果只想监听程序中个别activity的Home键,怎么做?
     如果在Mainfest.xml中设置了权限,其它Activity不就无法响应Home键了!
      

  3.   

    在你不需要响应的activity内重写onKeyDown    @Override
        public boolean onKeyDown(int keyCode, KeyEvent event)
        {
          // TODO Auto-generated method stub
          if(KeyEvent.KEYCODE_HOME==keyCode)
           { 
            Intent i= new Intent(Intent.ACTION_MAIN);
             i.addCategory(Intent.CATEGORY_HOME);
            startActivity(i);       
           }
          return super.onKeyDown(keyCode, event);
        }
      

  4.   

    哇,感谢这位专业人士,哈哈。
    另外多问一句,这样详单于程序退出了,对吧?
    killProcess不就已经达到关闭程序了么,那下面的onAttachedToWindow中具体是什么作用呢?没看特别明白。
      

  5.   

    用户按下Home的事件在应用层时捕捉不到的,因此只能从activity生命周期方法着手。
      

  6.   

    请问onuserleavehint  怎么重写啊? 能不能监听到menu键啊?