2011-11-11 129 views
28

如何用android上的硬件返回按鈕捕獲事件?我需要禁止用戶返回,當我點擊手機上的後退按鈕以顯示消息時,我不會繼續之前的活動。怎麼做 ?如何用android上的硬件後退按鈕捕獲事件?

+4

-1搜索,這已至少每週覆蓋一次。 – 2011-11-11 13:38:12

+0

[在Android中禁用後退按鈕]可能的重複(http://stackoverflow.com/questions/4779954/disable-back-button-in-android) –

回答

53

您可以通過此

  1. 覆蓋做用這種方法將onBackPressed()方法放入你的Activity中

    public void onBackPressed(){ 
        // do something here and don't write super.onBackPressed() 
    } 
    
  2. 覆蓋中,onKeyDown()方法

    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
        switch(keyCode){ 
        case KeyEvent.KEYCODE_BACK: 
         // do something here 
         return true; 
        } 
        return super.onKeyDown(keyCode, event); 
    } 
    
+0

是否真的有必要重寫'onKeyDown()'呢?當後退鍵被按下時,不會調用'onBackPressed()'? – LarsH

0

您可以禁止用戶 「回」 與onKeyDown()行動的活動是這樣的:前問

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if ((keyCode == KeyEvent.KEYCODE_BACK)) 
    { 
     //do actions like show message 
     return false; 
    } 
    return super.onKeyDown(keyCode, event); 
}