Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Force action Bar show search view

I am able to expand search view by action like this

<item android:id="@+id/menu_search"
          android:title="Search"
          android:showAsAction="never|collapseActionView"
          android:actionViewClass="android.widget.SearchView" />

But i have a 3-tab activity and i'd like to SearchView be always expanded How may I do that?

like image 564
Korniltsev Anatoly Avatar asked Jul 13 '12 20:07

Korniltsev Anatoly


1 Answers

Two steps are necessary.

First, you have to make sure your search menu item is always shown as an action and never moved into the overflow menu. To achieve this set the search menu item's showAsAction attribute to always:

<item     android:id="@+id/menu_search"     android:title="Search"     android:showAsAction="always"     android:actionViewClass="android.widget.SearchView" /> 

Second, make sure the action view is not shown in iconified (i.e. collapsed) mode by default. To do this call setIconifiedByDefault(false) on your search view instance:

@Override public boolean onCreateOptionsMenu(Menu menu) {     getMenuInflater().inflate(R.menu.my_activity, menu);      MenuItem searchViewItem = menu.findItem(R.id.menu_search);     SearchView searchView = (SearchView) searchViewItem.getActionView();     [...]     searchView.setIconifiedByDefault(false);      return true; } 

That should do it.

like image 163
Jonas Avatar answered Oct 18 '22 13:10

Jonas