搜索视图展开时如何隐藏导航抽屉切换按钮

Ton*_*Joe 2 android toolbar searchview

我希望我的搜索视图小部件填满整个工具栏,所以在 menu.xml 中我这样做了:

...
app:showAsAction="always"
Run Code Online (Sandbox Code Playgroud)

当搜索视图展开时,这似乎隐藏了工具栏中的所有其他项目,但不是抽屉切换按钮:

在此处输入图片说明

无论如何我可以让搜索视图小部件填满整个工具栏并隐藏切换按钮吗?谢谢

Abh*_*bhi 5

您可以通过隐藏汉堡按钮来实现此目的。将工具栏导航图标设置为 null。

toolbar.setNavigationIcon(null);
Run Code Online (Sandbox Code Playgroud)

编辑

要移除导航图标,请在您的onCreate方法中添加以下行。

getActionBar().setDisplayHomeAsUpEnabled(false);
Run Code Online (Sandbox Code Playgroud)

或者

getSupportActionBar().setDisplayHomeAsUpEnabled(false);
getSupportActionBar().setHomeButtonEnabled(false);
Run Code Online (Sandbox Code Playgroud)

要使 SearchView 填充操作栏,请在onCreateOptionsMenu方法中将 SearchView 的宽度设置为 max 。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_search, menu);
SearchView searchView = 
(SearchView)menu.findItem(R.id.menu_search).getActionView();
searchView.setMaxWidth(Integer.MAX_VALUE);
Run Code Online (Sandbox Code Playgroud)