版权声明:本文为xing_star原创文章,转载请注明出处!

本文同步自http://javaexception.com/archives/167

Android Toolbar中的title居中问题

从Toolbar出来后,用Toolbar代替ActionBar越来越常见了。当然了也有App是自定义TitleBar,保持苹果风格的效果。

近期碰到网易云信的Actionbar那块都是用Toolbar来实现的,导致Title居左,跟整个app的风格不搭,需要修改。

本文想要记录的是,如何让Toolbar实现title文字水平居中。在android的activity页面里,使用Toolbar.setTitle(“Title”)后,title的位置是位于左边的,太过于靠左了。在Toolbar的源代码中,也不找到相关的Api让其居中显示,那么只能另想办法了。

参考如下代码来解决问题,xml的布局为:

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/white"
app:titleTextAppearance="@style/Toolbar.TitleText"
app:subtitleTextAppearance="@style/Toolbar.SubTitleText"> <TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:lines="1"
android:textColor="@color/black"
android:ellipsize="end"
android:textSize="16dp" />
</android.support.v7.widget.Toolbar>

就是在Toolbar这个父容器下,添加一个TextView控件,让它作为Title显示,隐藏掉Toolbar的TitleView控件。

封装一个java方法

private void setTitleText(CharSequence title) {
if (tvTitle != null) {
toolbar.setTitle("");
tvTitle.setText(title);
} else {
toolbar.setTitle(title);
}
}

用这种取巧的方式来达到Title居中的目的,也是可以的。

Android Toolbar中的title居中问题的更多相关文章

  1. (原)IPhone开发时把ToolBar中的元素居中的技巧

    在IPhone应用开发时,经常用到ToolBar,其中的控件通常都是居左,想让它居中就有点困难. 这里介绍一种方法: 将Flexible Space Bar Button Item从库中拖到位于控件左 ...

  2. Android ToolBar标题文字居中的方法

    在项目的开发中,使用苹果手机的产品,出的界面效果图极有可能(我这里是一定)完全是按照苹果的界面风格来出的,例如界面顶部的title文字位置是水平居中 如图: 那么问题来了,当我们使用ToolBar控件 ...

  3. Android - toolbar navigation 样式

    1.修改title 边距 修改边距使用系统的app属性来引入使用,即: xmlns:app="http://schemas.android.com/apk/res-auto" 1 ...

  4. Android Toolbar 开发总结

    初识 Toolbar Toolbar是在 Android 5.0 开始推出的一个 Material Design 风格的导航控件 ,Google 非常推荐大家使用 Toolbar 来作为Android ...

  5. Android ToolBar

    众所周知,在使用ActionBar的时候,一堆的问题:这个文字能不能定制,位置能不能改变,图标的间距怎么控制神马的,由此暴露出了ActionBar设计的不灵活.为此官方提供了ToolBar,并且提供了 ...

  6. [置顶] xamarin android toolbar(踩坑完全入门详解)

    网上关于toolbar的教程有很多,很多新手,在使用toolbar的时候踩坑实在太多了,不好好总结一下,实在浪费.如果你想学习toolbar,你肯定会去去搜索androd toolbar,既然你能看到 ...

  7. android toolbar效果3

    Title居中,只有一个右边按钮 activity_main.xml: <?xml version="1.0" encoding="utf-8"?> ...

  8. android toolbar使用记录

    1.打开Project structure,选择app modules,切换到Dependencies添加com.android.support.design.26.0.0.alpha1 2.在lay ...

  9. Android ——Toolbar开发实践总结(转)

    过年前发了一篇介绍 Translucent System Bar 特性的文章 Translucent System Bar 的最佳实践 ,收到很多开发者的关注和反馈.今天开始写第二篇,全面的介绍一下  ...

随机推荐

  1. .net core 2.1 Swagger 配置

    1.先创建 .net core Web 应用程序,选择API 2.安装 Nuget 包:Swashbuckle.AspNetCore Install-Package Swashbuckle.AspNe ...

  2. PhantomJS抓取中文文档乱码

    使用PhantomJs抓取百度标题乱码 var url="http://www.baidu.com" var page=require('webpage').create() pa ...

  3. Thymeleaf常用语法:HTML属性设置

    使用Thymeleaf的属性来设置HTML属性.(1)使用th:attr属性可以修改原来HTML节点的属性:(2)th:attr属性可以同时设置多个属性:(3)每一个HTML属性都有对应的Thymel ...

  4. 监控redis命令 - monitor

    有时候我们需要知道客户端对redis服务端做了哪些命令操作.我们可以试用monitor命令来查看.它能清楚的看到客户端在什么时间点执行了那些命令. MONITOR 是一个调试命令,每个命令流回来的re ...

  5. ajax给全局变量设置值,请先关掉异步上传效果

    $.ajax({ type: 'POST', url: "/downloadExcelInfo", timeout: 0, async: false, contentType: & ...

  6. acwing 49. 二叉搜索树与双向链表

    地址:https://www.acwing.com/problem/content/87/ 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表. 要求不能创建任何新的结点,只能调整树中结点指针 ...

  7. 浅谈状态压缩DP

    浅谈状态压缩DP 本篇随笔简单讲解一下信息学奥林匹克竞赛中的状态压缩动态规划相关知识点.在算法竞赛中,状压\(DP\)是非常常见的动规类型.不仅如此,不仅是状压\(DP\),状压还是很多其他题目的处理 ...

  8. yii2关联表

    asArray()这个方法很好用,返回数组是1版本想要的形式,这种方式有种tp框架的感觉

  9. 实验:用Unity抓取指定url网页中的所有图片并下载保存

    突发奇想,觉得有时保存网页上的资源非常麻烦,有没有办法输入一个网址就批量抓取对应资源的办法呢. 需要思考的问题: 1.如何得到网页url的html源码呢? 2.如何在浩瀚如海的html中匹配出需要的资 ...

  10. ubuntu命令查看英伟达显卡型号

    在终端输入如下命令:nvidia-smi