Android 如何删除操作栏中可展开搜索视图左侧的额外空间,并强制显示另外两个菜单选项?

Android 如何删除操作栏中可展开搜索视图左侧的额外空间,并强制显示另外两个菜单选项?,android,android-layout,Android,Android Layout,我想删除扩展searchView之前的额外空间,还有一个菜单图标需要强制显示这两个图标 搜索了许多与此相关的问题,但似乎没有一个解决方案有效 这将与自定义toolbool一起使用 <android.support.v7.widget.Toolbar xmlns:app="schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="

我想删除扩展searchView之前的额外空间,还有一个菜单图标需要强制显示这两个图标

搜索了许多与此相关的问题,但似乎没有一个解决方案有效


这将与自定义toolbool一起使用

<android.support.v7.widget.Toolbar
      xmlns:app="schemas.android.com/apk/res-auto"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:background="@color/primaryColor"
      android:contentInsetLeft="0dp"
      android:contentInsetStart="0dp"
      app:contentInsetLeft="0dp"
      app:contentInsetStart="0dp" />

请确保使用带有显式命令的搜索小部件添加其他两个菜单,以便始终显示在工具栏上显示的菜单中

下面的示例显示了3个菜单项,其中“搜索视图”小部件显示为“如果房间”的操作,只要工具栏上有房间,就会显示它。其他2个菜单项也是如此

间隔应无缝进行

<menu 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"
tools:context=".activities.ScrollingActivity">  


<item
    android:id="@+id/action_search"
    android:title="@string/search_hint"
    android:orderInCategory="100"
    android:icon="@mipmap/ic_search_white_24dp"
    app:showAsAction="collapseActionView|ifRoom"
    app:actionViewClass="android.support.v7.widget.SearchView" />

<item
    android:id="@+id/profile"
    android:orderInCategory="100"
    android:title="@string/profile"
    app:showAsAction="ifRoom" />

<item
    android:id="@+id/credits"
    android:orderInCategory="101"
    android:title="@string/credits"
    app:showAsAction="ifRoom" />
</menu>

在OnCreateOptions菜单中的活动中,通过其ID获取searchview

比如说

SearchView SearchView=(SearchView)菜单.findItem(R.id.action_search).getActionView()


searchItem.expandActionView()

如果只需要减少导航图标和徽标之间的填充,请使用工具栏。设置ContentInsertStartWithNavigation(0)


与ContentInsertStart不同,这将仅在存在导航图标时修改插图。如果没有导航图标,您仍将有
16dp
start inset.

这将使搜索图标可折叠。我需要它在扩展模式下始终没有办法折叠它。这将删除所有其他屏幕的填充。这是为工具栏。因此,我有更多的屏幕使用相同的工具栏。此外,通过这样做,它也不允许我再添加两个图标。