Android 自定义Toolbar/ActionBar视图左边有空白

来源:互联网 发布:手机怎么申请淘宝达人 编辑:程序博客网 时间:2024/04/28 11:43

最近自定义Toolbar之后,发现左侧不能完全填充,总是留一点空白,经过查看新发布的V7的支持包中的style发现了解决方法。 

 

查看Wiget.AppCompat.Toolbar的parent,如下:

?
1
2
3
4
5
6
7
8
9
10
<stylename="Base.Widget.AppCompat.Toolbar"parent="android:Widget"
    <itemname="titleTextAppearance">@style/TextAppearance.Widget.AppCompat.Toolbar.Title</item
    <itemname="subtitleTextAppearance">@style/TextAppearance.Widget.AppCompat.Toolbar.Subtitle</item
    <itemname="android:minHeight">?attr/actionBarSize</item
    <itemname="titleMargins">4dp</item
    <itemname="maxButtonHeight">56dp</item
    <itemname="collapseIcon">?attr/homeAsUpIndicator</item
    <itemname="collapseContentDescription">@string/abc_toolbar_collapse_description</item
    <itemname="contentInsetStart">16dp</item
</style>
其中,contentInsetStart这个属性就是引起自定义ActionBar不能完全填充的原因。
解决方法:

在styles.xml中定义新的style继承自Wiget.AppCompat.Toolbar如下:
?
1
2
3
<style name="ClubToolbar"parent="Widget.AppCompat.Toolbar"
        <item name="contentInsetStart">0dp</item><!-- 设置该属性解决空白部分--> 
</style>

然后在你的style.xml中AppTheme里重写toolbar属性:

?
1
2
3
4
5
<!-- Base application theme. “NoActionBar”隐藏原有的Actionbar 设置Toolbar -->
    <stylename="AppTheme"parent="Theme.AppCompat.Light.NoActionBar">
        //.....
        <itemname="toolbarStyle">@style/ClubToolbar</item>
    </style>


0 0
原创粉丝点击