终于弄清楚了ActionBar上的各种间距值怎么调整,分享一下。
先简单介绍一下ActionBar的构成,如下图所示,(懒得自己画了,借用网上找的一张)
下边是一个简单的ActionBar的应用,借用这个图介绍一下各个值如何调整
ActionBar的大部分值都是定义在theme.xml和style.xml中的,也有部分是直接写在layout中。并且很多时候导航栏是通过ToolBar实现的,所以ToolBar的一些值也有可能会用到。在原生代码中,ActionBar和ToolBar的Style如下,基本上大部分的值都是在自己的应用的style.xml中重写这些原生定义的值,达到我们自己想要的效果。我以下的配置全部参考的Material的theme,其他theme的某些值可能会跟这个有些出入。
<style name="Widget.Material.ActionBar">
<item name="background">@null</item>
<item name="backgroundStacked">@null</item>
<item name="backgroundSplit">@null</item>
<item name="displayOptions">showTitle</item>
<item name="divider">?attr/dividerVertical</item>
<item name="height">?attr/actionBarSize</item>
<item name="paddingStart">0dip</item>
<item name="paddingTop">0dip</item>
<item name="paddingEnd">0dip</item>
<item name="paddingBottom">0dip</item>
<item name="titleTextStyle">@style/TextAppearance.Material.Widget.ActionBar.Title</item>
<item name="subtitleTextStyle">@style/TextAppearance.Material