2016-01-22 48 views
1

我想查看SearchView後面的後退箭頭。 http://i.imgur.com/Xetu0L1.png XML:Android AppBar SearchView佔用全部空間而沒有後退箭頭

<item android:id="@+id/search" 
     android:title="@string/search_btn_hint" 
     android:icon="@drawable/ic_action_search" 
     android:titleCondensed="@string/search_btn_hint" 
     app:actionViewClass="android.support.v7.widget.SearchView" 
     app:showAsAction="always" /> 

我試圖用 「collapseActionView | ifRoom」,但它並沒有將焦點放到了搜索查看。我的Java代碼,將焦點:

getMenuInflater().inflate(R.menu.search, menu); 
final SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView(); 
searchView.setIconifiedByDefault(false); // Do not iconify the widget; expand it by default 
searchView.setQueryHint("Search..."); 
searchView.setFocusable(true); 
searchView.setIconified(false); 
searchView.requestFocusFromTouch(); 

回答

0

只是一個工具欄添加到您的.xml佈局文件(這是在我的情況下,相對佈局,但是這不是一個需求可能是一個線性佈局或什麼的,只是什麼你已經習慣了你的活動佈局內使用):

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@color/Background" 
tools:context=".YourActivity"> 
     <android.support.v7.widget.Toolbar 
      android:id="@+id/YOUR_TOOLBAR_ID_HERE" 
      android:layout_height="?attr/actionBarSize" 
      android:layout_width="match_parent" 
      android:minHeight="?attr/actionBarSize" 
      android:background="@color/Header" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
      android:textSize="20sp"> 
     </android.support.v7.widget.Toolbar> 
</RelativeLayout> 

實例化活動的佈局裏面的OnCreate():

setContentView(R.layout.your_activity_layout); 

,做這樣的事情,實例化奠定之後出:

<item 
    android:id="@+id/action_searchable_activity" 
    android:orderInCategory="1" 
    android:icon="@drawable/ic_search_white_24dp" 
    android:title="@string/title_activity_searchable" 
    app:showAsAction="ifRoom" 
    android:iconifiedByDefault="false" 
    app:actionViewClass="android.support.v7.widget.SearchView"/> 

它爲我的作品:

mToolbar = (Toolbar) findViewById(R.id.YOUR_TOOLBAR_ID_HERE); 
setSupportActionBar(mToolbar); 
getSupportActionBar().setTitle(null); 
getSupportActionBar().setHomeButtonEnabled(true); 
getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

這個Java類

searchView.setIconifiedByDefault(false); 

最後,在XML搜索菜單項裏添加到您的搜索查看。希望能幫助到你。

+0

我應該在哪裏添加工具欄菜單或活動? –

+0

+在此先感謝 –

+0

我已更新答案。 –