Pranjal Kaler
Pranjal Kaler

Reputation: 59

Changing functionality of back button on android

I want to change the functionality of back button for a particular bunch of code being active. Once its done how do i reset it to default.

I am using following piece of code:

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

        else{

        }
        return true;
    }

boolean issearchopen is true whenever my 'bunch' of code is active.

Thanks in advance

Upvotes: 0

Views: 54

Answers (2)

Denysole
Denysole

Reputation: 4051

To do it you need to override onBackPressed() method. Your code will looks like this

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

Also don't forget to change issearchopen to true when open searchView.

Upvotes: 0

Murat Karagöz
Murat Karagöz

Reputation: 37584

It should look like this

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

Upvotes: 1

Related Questions