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

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

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

<style name="Base.Widget.AppCompat.Toolbar" parent="android:Widget">
    <item name="titleTextAppearance">@style/TextAppearance.Widget.AppCompat.Toolbar.Title</item>
    <item name="subtitleTextAppearance">@style/TextAppearance.Widget.AppCompat.Toolbar.Subtitle</item>
    <item name="android:minHeight">?attr/actionBarSize</item>
    <item name="titleMargins">4dp</item>
    <item name="maxButtonHeight">56dp</item>
    <item name="collapseIcon">?attr/homeAsUpIndicator</item>
    <item name="collapseContentDescription">@string/abc_toolbar_collapse_description</item>
    <item name="contentInsetStart">16dp</item>
</style>

其中,contentInsetStart这个属性就是引起自定义ActionBar不能完全填充的原因。

解决方法:

在styles.xml中定义新的style继承自Wiget.AppCompat.Toolbar如下:

<style name="ClubToolbar" parent="Widget.AppCompat.Toolbar">
        <item name="contentInsetStart">0dp</item><!-- 设置该属性解决空白部分-->
</style>

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

<!-- Base application theme. “NoActionBar”隐藏原有的Actionbar 设置Toolbar -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        //.....
        <item name="toolbarStyle">@style/ClubToolbar</item>
    </style>
时间: 2024-11-09 15:53:45

Android 自定义Toolbar/ActionBar视图左边有空白的相关文章

Android开发:Toolbar基本使用和自定义Toolbar

Toolbar简介 Toolbar 是 Android 5.0 推出的一个 Material Design 风格的导航控件 ,用来取代之前的 Actionbar .与 Actionbar 相比,Toolbar 明显要灵活的多.它不像 Actionbar 一样,一定要固定在Activity的顶部,而是可以放到界面的任意位置,看下官方文档介绍: 注意看着几部分: - 1.设置导航栏图标: - 2.设置App的logo: - 3.支持设置标题和子标题: - 4.支持添加一个或多个的自定义控件: - 5

去除自定义Toolbar中左边距

问题 自定义Toolbar之后,发现左侧不能完全填充,总是留一点空白,如下图: 原因 查看Wiget.AppCompat.Toolbar的parent(Toolbar默认的style),如下: <style name="Base.Widget.AppCompat.Toolbar" parent="android:Widget"> <item name="titleTextAppearance">@style/TextApp

Android 自定义ActionBar

Android 3.0及以上已经有了ActionBar的API,可以通过引入support package在3.0以下的平台引用这些API,但这儿呢,完全自定义一个ActionBar,不用引入额外jar包,参照的是开源的UI组件 GreeenDroid,项目主页:https://github.com/cyrilmottier/GreenDroid .提取出关于ActionBar的相关文件,你可以放在自己的项目中,最后会附下载地址.下面说下在程序中的用法. 新建一个TestActionBar项目,

Android自定义ActionBar

Android 3.0及以上已经有了ActionBar的API,可以通过引入support package在3.0以下的平台引用这些API,但这儿呢,完全自定义一个ActionBar,不用引入额外jar包,参照的是开源的UI组件 GreeenDroid,项目主页:https://github.com/cyrilmottier/GreenDroid .提取出关于ActionBar的相关文件,你可以放在自己的项目中,最后会附下载地址.下面说下在程序中的用法. 新建一个TestActionBar项目,

Android 自定义View视图

创建全新的视图将满足我们独特的UI需求. 本文介绍在指南针开发中会用到的罗盘的界面UI,通过继承View类实现的自定义视图,以此来深刻了解自定义视图. 实现效果图: 源代码: 布局文件activity_main(其中CompassView继承View类): <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.

Android 自定义Adapter实现多视图Item的ListView

自定义Adapter实现多视图Item的ListView http://www.devdiv.com/adapter_item_listview-blog-20-7539.html Android 自定义Adapter实现多视图Item的ListView,布布扣,bubuko.com

Android自定义视图四:定制onMeasure强制显示为方形

这个系列是老外写的,干货!翻译出来一起学习.如有不妥,不吝赐教! Android自定义视图一:扩展现有的视图,添加新的XML属性 Android自定义视图二:如何绘制内容 Android自定义视图三:给自定义视图添加"流畅"的动画 Android自定义视图四:定制onMeasure强制显示为方形 上一篇开发之后的效果如上图.不过看着这张图,需要注意的不是我们自定义视图展示了什么,而是这个视图的大小和位置.你会看到这个折线图有一个特定的大小(size).这个size是怎么定的呢?现在的代

ANDROID自定义视图——onMeasure流程,MeasureSpec详解

简介: 在自定义view的时候,其实很简单,只需要知道3步骤: 1.测量--onMeasure():决定View的大小 2.布局--onLayout():决定View在ViewGroup中的位置 3.绘制--onDraw():如何绘制这个View. 而第3步的onDraw系统已经封装的很好了,基本不用我们来操心,只需要专注到1,2两个步骤就中好了. 而这篇文章就来谈谈第一步,也是十分关键得一步:"测量(Measure)" Measure(): Measure的中文意思就是测量.所以它的

android自定义View之(七)------自定义控件组合仿actionbar控件

我们前面写了6个自定义view的样例,这都是全新自已画的控件.在这个样例中,我们来用几个现有的控件来组合成一个新的控件. 效果图: 我们用二个Button和一个TextView组合来成为一个actionbar,下面先来一个效果图: 关键代码: (1)res/layout/custom_action_bar.xml----组合控件布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android&quo