如何删除向上导航箭头和工具栏标题之间​​的填充?

时间:2018-08-07 20:07:54

标签: android xml android-layout toolbar android-toolbar

enter image description here

顶部是设置时向上导航箭头的默认填充

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

我希望工具栏看起来更像底部图像,因为我希望标题指示向上导航箭头会将用户发送给的位置,而不是对当前活动的描述。到目前为止,我已经尝试将自定义textview添加到工具栏,并根据类似问题this设置app:contentInsetStartWithNavigation="0dp"。但是,正如作者指出的那样,这不会删除箭头右侧的填充。如何使工具栏看起来更像第二张图像?我的工具栏的当前xml如下:

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar_doc"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimary"
    android:minHeight="?attr/actionBarSize"
    android:theme="?attr/actionBarTheme"
    app:contentInsetStartWithNavigation="0dp"
    app:layout_constraintTop_toTopOf="parent">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:gravity="left"
        android:id="@+id/txtTitle"
        android:textColor="#FFFFFF"/>

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

我进一步提供菜单的xml,我使用菜单充气器将其添加到工具栏。我浮动的另一个解决方案是在菜单本身中添加箭头图标和textview?但是然后我不确定如何给新的箭头图标相同的导航行为。

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    <item
        android:id="@+id/navigation_home"
        android:icon="@drawable/ic_baseline_home_24px"
        app:showAsAction="always"/>
    <item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        android:title="@string/action_settings"
        app:showAsAction="never" />
</menu>

1 个答案:

答案 0 :(得分:0)

尝试将app:contentInsetStart设置为0dp,而不是app:contentInsetStartWithNavigation

    <android.support.v7.widget.Toolbar
        ...
        app:contentInsetStart="0dp">