Android:Text in searchView disappears on Configuration Change -


the text enter in searchview disappears on config change.
handling config change still not working.
have used fragments, below code written inside fragment.
please solve problem respect that.
problem not able retrieve savedinstance in onactivitycreated method
below code:
snippets of useful code

private string searchquery="";          @override         public void onactivitycreated(bundle savedinstancestate) {             super.onactivitycreated(savedinstancestate);             if(savedinstancestate != null)             searchquery = savedinstancestate.getstring(tag.search_query);         }            @override         public void onsaveinstancestate(bundle outstate) {             super.onsaveinstancestate(outstate);             outstate.putstring(tag.search_query, searchquery);          }   @override         public void oncreateoptionsmenu(menu menu,menuinflater menuinflater) {             // inflate menu; adds items action bar if present.             menuinflater.inflate(r.menu.menu_search, menu);             menuitem menuitem = menu.finditem(r.id.action_search);             searchview searchview = null;             if (menuitem != null)                 searchview = (searchview) menuitem.getactionview();              if (searchview != null) {                 searchview.setquery(searchquery,false);                 searchview.setonquerytextlistener(new searchview.onquerytextlistener() {                      @override                     public boolean onquerytextsubmit(string query) {                         //searching done in async task                         searchquery = query;                         networkutility.onprogressbarshow(getactivity());                         myasynctaskdownloaddetails myasynctaskdownloaddetails = new myasynctaskdownloaddetails();                         myasynctaskdownloaddetails.execute(new string[]{tag.plp_url + query, tag.plp,""});                         return true;                     }                       @override                     public boolean onquerytextchange(string newtext) {                         return true;                     }                 });             }             super.oncreateoptionsmenu(menu, menuinflater);         }     } 

first of saving querytext in onquerytextsubmit callback means searchquerywill remain empty unless , until user have submitted query search, keep in mind.

secondly try following code. work have tested it.

if(searchquery.length()>0){      //see commented code     //  if(utils.hasicecreamsandwich()) {     //      searchmenuitem.expandactionview();     //  }else {     //      menuitemcompat.expandactionview(searchmenuitem);     //  }      menuitemcompat.expandactionview(menuitem);     searchview.setquery(searchquery, false); } 

Comments