2017-06-06 202 views
0

我想更改一組正在激活的特定代碼的後退按鈕的功能。一旦完成,我如何將其重置爲默認值。更改後退按鈕的功能android

我使用下面的代碼段:

@Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) 
    { 
     if(keyCode== KeyEvent.KEYCODE_BACK && issearchopen) 
     {    
      searchView.closeSearch(); 
     } 

     else{ 

     } 
     return true; 
    } 

布爾issearchopen每當我的代碼「一堆」是活動是真實的。

在此先感謝

+4

您可能想覆蓋活動中的'onBackPressed()'。 –

+0

它將如何幫助我? –

+0

我已成功按照您的說法完成,但我如何重置默認功能? –

回答

1

它應該是這樣的

@Override 
public void onBackPressed() { 
    if(isSearchOpen){ 
    // do stuff 
    } else { 
     super.onBackPressed(); // default behaviour 
    } 
} 
+0

@Downvoter,小心解釋一下? –

+2

這個答案很好+1,我不知道有人低估了它 – jagapathi

0

要做到這一點,你需要重寫onBackPressed()方法。 你的代碼看起來像這樣

@Override 
public void onBackPressed() { 
    if(issearchopen){ 
     searchView.closeSearch(); 
     issearchopen = false; 
    } else { 
     super.onBackPressed(); // default back press behaviour 
    } 
} 

也不要忘了修改issearchopentrue時打開搜索查看。

+0

非常感謝.......它的工作:D –