最近项目中打算使用ToolBar这个控件,用过之后发现有些问题,明明设置居中的控件,但是总是靠右边了一点点,后来在网上找了些资料才发现,原来是ToolBar控件默认有一些左边距,知道原因就好解决了,在网上查阅了些资料发现。

原来是在Wiget.AppCompat.Toolbar的parent

<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>

这个style中,有一个contentInsetStart属性,就是这个属性造成的左边距。

知道是这个属性的原因了,那么只要继承这个style,重写一下这个属性就可以了。

定义一个新的style:

<style name="MyToolbar"parent="Widget.AppCompat.Toolbar"
        <item name="contentInsetStart">0dp</item>
</style>

然后在AppTheme中定义toolbarStyle就可以了。

 <stylename="AppTheme"parent="Theme.AppCompat.Light.NoActionBar">
        //.....
        <itemname="toolbarStyle">@style/MyToolbar</item>
    </style>

这样就可以解决左边距的问题了。

另外还有一种方法,就是在ToolBar控件中xml属性直接定义contentInsetStart属性为0也是可以解决的。

ps 一定要记住 <itemname="toolbarStyle">@style/MyToolbar</item>是放在你application中的主题,即你需要改变的页面的地方。

ToolBar控件去除默认的左边距相关推荐

  1. Toolbar去掉默认的左边距

    Toolbar控件里面嵌套其他布局时,默认你会发现距左边有一定的距离:距顶部也有一定的距离. 查看Toolbar Style查其原因: <style name="Base.V7.Wid ...

  2. Android UI 统一修改Button控件的样式,以及其它系统控件的默认样式

    先介绍下修改原理:首先打开位于android.widget包下面的Button.java文件,这里有一句关键的代码如下: public Button(Context context, Attribut ...

  3. [ASP.NET 控件实作 Day14] 继承 CompositeControl 实作 Toolbar 控件

    之前我们简单介绍过继承 CompositeControl  来实作复合控件,在本文我们将以 Toolbar 控件为例,以复合控件的作法(继承 CompositeControl )来实作 Toolbar ...

  4. WPF中ContextMenu(右键菜单)使用Command在部分控件上默认为灰色的处理方法

    WPF中ContextMenu(右键菜单)使用Command在部分控件上默认为灰色的处理方法 原文:WPF中ContextMenu(右键菜单)使用Command在部分控件上默认为灰色的处理方法 问题描 ...

  5. android toolbar控件,Android Toolbar控件

    1. Toolbar类 Toolbar是替代ActionBar的产物,低版本可以使用v7兼容包,使用Theme.AppCompat主题,并添加配置. false true 2. Toolbar配置 主 ...

  6. 修改安卓默认的系统button样式,以及其它系统控件的默认样式

    先介绍下修改原理:首先打开位于android.widget包下面的Button.java文件,这里有一句关键的代码如下: public Button(Context context, Attribut ...

  7. C#开发APP,ToolBar控件在Smobiler中的使用方式【附案例源码】——Smobiler移动开发平台...

    控件说明 底部工具栏控件. 效果演示 其他效果 该界面为仿淘宝UI制作的一个简单的UI模板,源码获取方式请拉至文章末尾. 特色属性 属性 属性说明 Direction(相对布局) 容器主轴方向. Fl ...

  8. Toolbar控件:32位真彩色大图标

    一.创建普通toolbar 1.         新建一MFC程序,在Dlg头文件中添加一个CToolBar类的成员变量CToolBar m_Toolbar; 2.         然后在头文件中定义 ...

  9. Android的Spinner控件解决默认选中第一条问题

    如下,有两个Spinner控件,一个默认,一个设置为不可见并不占用空间 <Spinnerandroid:id="@+id/spinner"android:layout_wid ...

最新文章

  1. 整理下.net分布式系统架构的思路
  2. 高效查看MySQL帮助文档的方法
  3. 记一些css 3效果
  4. 机器学习——数据降维
  5. 【Linux】一步一步学Linux——bg命令(131)
  6. 【牛客 - 370A】签到题(线段树扫描线 或 STLset)(求线段并)
  7. VS Code:高效前端程序员的秘密武器
  8. QQ号双主号要求验证码解决方法
  9. Python学习笔记:创建进程
  10. blog.mm index.php,每天一个WordPress文件:index.php
  11. C语言标准库<limits.h>
  12. File类和各种io类会不会自动创建文件
  13. 损失函数与代价函数区别
  14. 【免费模版分享】任务管理移动端Axure原型模板
  15. CA搭建实验和安全基础
  16. #软工实践-个人项目-词频统计
  17. Android App通过蒲公英实现更新
  18. VTK图形处理之剪裁
  19. 【C语言】指针基础知识点汇总
  20. 一看就会的Redist数据持久化之AOP

热门文章

  1. 鸿蒙系统首批更新名单,鸿蒙系统首批升级名单是哪些-鸿蒙系统首批升级名单详细介绍 - 系统家园...
  2. Unity中Light Probe详解
  3. OpenShift 4 - DevSecOps Workshop (13) - 将镜像推送到Quay,并进行漏洞扫描
  4. (六)将样式转换模型从TensorFlow转换为TensorFlow Lite
  5. (三)微调VGG16以对服装进行分类
  6. 使用LINQ计算基本统计
  7. 使用Elasticsearch和C#理解和实现CRUD APP的初学者教程——第2部分
  8. PL/SQL中的RSA加密
  9. 微软开源 Scalar,提升操作巨型 Git 仓库的速度
  10. Linux错误27,解决在linux下编译32程序出现“/usr/include/gnu/stubs.h:7:27: 致命错误:gnu/stubs-32.h:没有那个文件或目录问题”...