查看: 2598|回复: 0

[Android教程] Toolbar去除标题与返回键间的间距

发表于 2018-1-30 08:00:01

很早就遇到一个问题,如下图:

间距过大

间距正常

标题和左侧的返回键间距过大,之前在做CloudReader的时候就遇到了,一直没有解决,由于自身强迫症,心里始终和这个过不去,就研究了很久终于解决了。

之前在网上找了各种解决方法,比如给ToolBar设置

  1. app:contentInsetLeft="0dp"
  2. app:contentInsetStart="0dp"
复制代码

不直接给ToolBar设置字体,在ToolBar里面包裹TextView,还是不行。
等等...

最后:
mTitleToolBar.setNavigationIcon(R.drawable.icon_back);去掉后,发现标题顶格了,于是怀疑是NavigationIcon的问题。
app:navigationIcon="@drawable/icon_back"设置在ToolBar属性上后可以直接看到效果,开始考虑是不是有一个属性是设置NavigationIcontitle之间的间距,果然发现了:

  1. app:contentInsetStartWithNavigation="0dp"
复制代码

附上完整代码:

  1. <android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto"
  2. android:id="@+id/title_tool_bar"
  3. android:layout_width="match_parent"
  4. android:layout_height="?attr/actionBarSize"
  5. android:background="@color/colorTheme"
  6. app:contentInsetLeft="0dp"
  7. app:contentInsetStart="0dp"
  8. app:contentInsetStartWithNavigation="0dp"
  9. app:layout_scrollFlags="enterAlways|scroll"
  10. app:navigationIcon="@drawable/icon_back"
  11. app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
  12. app:theme="@style/ToolbarStyle"
  13. app:title="标题"
  14. app:titleTextColor="@color/colorWhite">
复制代码

后来直接搜了这个属性查了一下,发现之前还是有很多人遇到过,只不过我没检索出来,推荐一个分析的很好的:

关于Toolbar中navigationIcon和title之间距离及展开 app:contentInsetStartWithNavigation=“0dp” isn't working in ToolBar - 在外面包裹AppBarLayout应该也能达到效果


回复

使用道具 举报