@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
         
      return true;
    }
可以屏蔽home的长按短按.音量加减也可以屏蔽。但只能屏蔽back只能屏蔽短按。长按无法屏蔽。请问有什么好的办法可以屏蔽长按back键???

解决方案 »

  1.   

    我遇到和你一样的问题,不知道你可解决了 在2.0 以上的版本 源码中当onKeyDown时 会去stratracking() 这个意思就是交由下一个事件 也就是onKeyUp 而up的方法中才会真正的调用onBackPressed()方法去关闭应用 可是当你实习那长按 也就是onKeyLongPress方法 程序第一度还是走onKeyDown 然后也会走onKeyLongPress 但是你会发现不走onKeyUp方法 也不走onBackPressed() 方法 我怀疑是这个中的一些别的原因让程序突然退出了,还有back键的长按肯定会触发onKeyDown 才能触发onKeyLongPress 和click 和longlick 不一样 
      

  2.   


    禁掉系统对back的处理试试 
    @Override public boolean onKeyDown(int keyCode, KeyEvent event){   if(KeyEvent.KEYCODE_BACK==keyCode)    android.os.Process.killProcess(android.os.Process.myPid());     return super.onKeyDown(keyCode, event);  } 
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>
    在添加自己的处理
      

  3.   

    长按back转到后台 没有执行onPause 你们允许修改系统源码么