应用设置了ActionBarStyle之后,Actionbar两侧出现了一点空白,如图:
imgActionBar风格定义为:
<style name="ActionBarStyle" parent="Widget.AppCompat.Toolbar">
</style>
根据网上的方法,添加了contentInsetStart
属性,无果。
<style name="ActionBarStyle" parent="Widget.AppCompat.Toolbar">
<item name="android:contentInsetStart">0dp</item><!-- 设置该属性解决左侧空白部分-->
<item name="android:contentInsetEnd">0dp</item><!-- 设置该属性解决右侧空白部分-->
</style>
于是跟踪 Widget.AppCompat.Toolbar
样式,发现其依赖自 Base.V7.Widget.AppCompat.Toolbar
,其中有这么两个属性:
<style name="Base.V7.Widget.AppCompat.Toolbar" parent="android:Widget">
<item name="android:paddingStart">@dimen/abc_action_bar_default_padding_start_material</item>
<item name="android:paddingEnd">@dimen/abc_action_bar_default_padding_end_material</item>
</style>
而这个属性在 values
中为0,而在values-sw600dp-v13
中则为8dp
,而恰好设备的宽度满足这个条件。
所以,只需要在自定义的 Style 中加上 <item name="android:paddingStart">0dp</item>
和 <item name="android:paddingEnd">0dp</item>
即可。
<style name="ActionBarStyle" parent="Widget.AppCompat.Toolbar">
<item name="android:contentInsetStart">0dp</item><!-- 设置该属性解决左侧空白部分-->
<item name="android:contentInsetEnd">0dp</item><!-- 设置该属性解决右侧空白部分-->
<item name="android:paddingStart">0dp</item>
<item name="android:paddingEnd">0dp</item>
</style>
网友评论