android開發如何屏蔽home鍵


在網上查的差不多就是兩種方法
重寫onAttachedToWindow,安卓4.0以上報錯
重寫onKeyDown,沒用,根本監聽不到home鍵

 

在2.3版本以下重寫下面方法就能重寫home鍵

1 public void onAttachedToWindow() {
2       this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
3       super.onAttachedToWindow();
4 }

在4.0以上的版本中需要利用以下方法屏蔽和重寫Home鍵,代碼如下:

1 public static final int FLAG_HOMEKEY_DISPATCHED = 0x80000000; //需要自己定義標志
2 public void onCreate(Bundle savedInstanceState) {
3     super.onCreate(savedInstanceState);
4     this.getWindow().setFlags(FLAG_HOMEKEY_DISPATCHED, FLAG_HOMEKEY_DISPATCHED);//關鍵代碼
5     setContentView(R.layout.main);
6 }

再重寫onKey事件即可

@Override
public boolean onKeyDown( int keyCode, KeyEvent event) {    
if (keyCode == event. KEYCODE_HOME) {       
 return true;     
 }
 return super.onKeyDown(keyCode, event);
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM