2016-05-02 7 views
4

をsearchviewをexpandigとき、私は、このツールバーを持っている:プッシュアイコン私の活動では..私は、この特定の行動に直面していると私はそれを修正する方法がわからないアンドロイドのツールバーに</p> <p>を

enter image description here

検索アイコンをクリックすると、それが展開され、他のアイコンがビューの外にプッシュされます。

enter image description here

私は右のアイコンを保つことができる方法を知っていると、検索ビュースペースを減らしたいです。

これは私のメニューのレイアウトです:

私の活動のレイアウトで
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto"> 

<item 
    android:id="@+id/action_search" 
    android:title="@string/buscar" 
    app:actionViewClass="android.support.v7.widget.SearchView" 
    app:showAsAction="always" /> 

<item 
    android:id="@+id/alimentos_basket" 
    android:orderInCategory="1" 
    android:title="@string/alimentos_anadidos" 
    app:showAsAction="always" /> 

私は何も

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true" 
tools:context="com.irixgalicia.irixhealth.app.comidaDiaria.AnadirAlimentoActivity"> 

<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:popupTheme="@style/AppTheme.PopupOverlay"> 

    </android.support.v7.widget.Toolbar> 

</android.support.design.widget.AppBarLayout> 

<include layout="@layout/content_anadir_alimento" /> 

を持っていない、これらは活動のコードです私が膨張する場所

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 

    getMenuInflater().inflate(R.menu.menu_anadir_alimento, menu); 
    final MenuItem menuItem = menu.findItem(R.id.action_search); 
    final SearchView searchView = (SearchView) MenuItemCompat.getActionView(menuItem); 
    searchView.setOnQueryTextListener(this); 

    final MenuItem contadorItem = menu.findItem(R.id.alimentos_basket); 
    contadorItem.setIcon(buildCounterDrawable(contadorAlimentos, R.drawable.ic_food_variant_white_36dp)); 

    return super.onCreateOptionsMenu(menu); 
} 

私のレイアウトでは、私はアイコンだけでなく、ツールバーを持っています。

<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:popupTheme="@style/AppTheme.PopupOverlay"> 

    </android.support.v7.widget.Toolbar> 

</android.support.design.widget.AppBarLayout> 

ありがとうございました...誰もが私が探しているものを達成する方法を知っている持っています!

答えて

7

使用ifRoom|collapseActionView属性のshowAsAction

<item 
     android:id="@+id/action_search" 
     android:title="search" 
     app:actionViewClass="android.support.v7.widget.SearchView" 
     android:icon="@drawable/ic_search" 
     app:showAsAction="ifRoom|collapseActionView"/> 
+0

はそれがとても簡単だろう知りませんでした!ありがとう@Dinesh – neteot

+0

私にとって素晴らしい作品です。ありがとうございました ! –

0

変更ifRoomshowAsAction属性としてみてください -

<item 
    android:id="@+id/alimentos_basket" 
    android:orderInCategory="1" 
    android:title="@string/alimentos_anadidos" 
    app:showAsAction="ifRoom" />