在我的應用程序的一個活動中,我使用android.support.v7.widget.Toolbar作爲標題欄。默認情況下,標題欄佈局,左側最將搜索框/文本字段添加到android標題欄
TextView的標題欄的標題包含
ImageButton的 「抽屜式導航欄」 在右
菜單項最
我正在嘗試:
組標題爲「」,所以基本上標題不會採取任何空間
添加元素X(例如,某種文本輸入/搜索框的)之間的「抽屜式導航欄」和現有的菜單項,該元素將充分空間1和3
之間
在我的應用程序的一個活動中,我使用android.support.v7.widget.Toolbar作爲標題欄。默認情況下,標題欄佈局,左側最將搜索框/文本字段添加到android標題欄
TextView的標題欄的標題包含
ImageButton的 「抽屜式導航欄」 在右
菜單項最
我正在嘗試:
組標題爲「」,所以基本上標題不會採取任何空間
添加元素X(例如,某種文本輸入/搜索框的)之間的「抽屜式導航欄」和現有的菜單項,該元素將充分空間1和3
之間
爲此,您不需要設置標題爲 「」 就叫
getSupportActionBar().setDisplayShowTitleEnabled(false);
爲此,您需要編輯menu.xml文件
之間210並在活動中,你必須編寫代碼: -
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_user_list, menu);
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
//TODO write your code what you want to perform on search
return true;
}
@Override
public boolean onQueryTextChange(String query) {
//TODO write your code what you want to perform on search text change
return true;
}
});
return true;
}
你並不需要添加X圖標手動它是由Android本身處理。一旦你點擊搜索圖標,它將打開標題上帶有十字圖標的編輯文本,一旦你點擊十字標題就會自動縮小。
你有沒有嘗試添加在你的菜單項的SearchView
<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="Search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="always"/>
<!-- other menu items -->
</menu>
然後在你的活動使用setIconifiedByDefault()
爲false,以便在搜索字段始終顯示:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.search_menu, menu);
final MenuItem item = menu.findItem(R.id.action_search);
final SearchView searchView = (SearchView) MenuItemCompat.getActionView(item);
searchView.setIconifiedByDefault(false);
return true;
}
查看使用AppBarLayout xml元素 –