2011-10-11 58 views
1

我正在開發Android中的應用程序,我用的是下面的代碼來處理後退按鈕該KeyEvent:如何在Android應用程序中處理主鍵的KeyEvent?

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if ((keyCode == KeyEvent.KEYCODE_BACK)) 
    {   
     finish(); 
    } 

    return super.onKeyDown(keyCode, event); 
} 

我怎麼會去這樣做的home鍵?

+0

我想要關閉活動,不用更改上一個活動中的任何活動。 –

+0

您不應該這樣做。看到這個問題:http://stackoverflow.com/questions/4783960/call-method-when-home-button-pressed-on-android – kgiannakakis

+0

可能可以通過[這]得到解決[1] [1]:http://stackoverflow.com/questions/10869814/how-to-handle-home-button-in-android/13031697#13031697 –

回答

1

您無法控制主鍵的行爲。您不會得到Home鍵的事件,但您可以禁用它,但強烈建議您不要這樣做。在阻止Home鍵之前,請參閱此post

但是您可以阻止home鍵是這樣的:

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

未能爲我工作 –

1

明顯的答案是 - 處理Home鍵按下的onPause(你的活動)的方法。當用戶點擊主鍵時調用此回調。 Guaranted。 Home鍵不適合你,但操作系統和用戶需要 。

+0

代碼示例會有幫助 –

相關問題