Android Toolbar 居中
Android Toolbar封装
1、QToolbar是什么
标题栏控件,基于Toolbar控件封装
- 有返回按钮
- 左标题
- 居中标题
- 子标题
- 右侧菜单
优势:
继承于Toolbar,Toolbar的API QToolbar都支持,会toolbar可轻松上手
效果图:
2、如何使用
xml中引入com.qw.widget.appbar.QToolbar控件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".MainActivity"><com.qw.widget.appbar.QToolbarstyle="?attr/toolbarStyle"android:layout_width="match_parent"android:layout_height="wrap_content"app:title="居中的标题"app:menu="@menu/toolbar"app:titleGravity="center"app:navigationIcon="@drawable/ic_baseline_arrow_back_ios_24" /><com.qw.widget.appbar.QToolbarstyle="?attr/toolbarStyle"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginTop="32dp"app:title="居左标题"app:menu="@menu/toolbar"app:navigationIcon="@drawable/ic_baseline_arrow_back_ios_24"app:titleGravity="left" />
</LinearLayout>
属性介绍:
app:titleGravity 标题方向值有:left,center 默认center
API:
设置文本方向
public static final int GRAVITY_LEFT = 0;
public static final int GRAVITY_CENTER = 1;
public void setTextGravity(int gravity) {this.titleGravity = gravity;
}
设置title
public void setTitle(CharSequence title) {
}
3、自定义样式
<style name="Theme.QAppbar" parent="Theme.MaterialComponents.DayNight.NoActionBar"><!-- Primary brand color. --><item name="colorPrimary">@color/purple_500</item><item name="colorPrimaryVariant">@color/purple_700</item><item name="colorOnPrimary">@color/white</item><!-- Secondary brand color. --><item name="colorSecondary">@color/teal_200</item><item name="colorSecondaryVariant">@color/teal_700</item><item name="colorOnSecondary">@color/black</item><!-- Status bar color. --><item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item><!-- Customize your theme here. --><item name="toolbarStyle">@style/Toolbar</item>
</style>
<style name="Toolbar" parent="Widget.MaterialComponents.Toolbar.PrimarySurface"><!-- 重写titleTextAppearance即可 --><item name="titleTextAppearance">@style/TitleTextAppearance</item><!-- 文字顔色 --><item name="titleTextColor">?attr/colorOnPrimary</item><item name="titleGravity">center</item>
</style>
<style name="TitleTextAppearance"><!-- 文字大小 --><item name="android:textSize">@dimen/abc_text_size_title_material_toolbar</item><!-- 文字顔色 --><item name="android:textColor">?android:attr/textColorPrimary</item>
</style>
注意:Toolbar在设置控件文本是先设置 titleTextAppearance
后设置 titleTextColor
toolbar 源码 setTitle方法
public void setTitle(CharSequence title) {if (!TextUtils.isEmpty(title)) {if (mTitleTextView == null) {final Context context = getContext();mTitleTextView = new AppCompatTextView(context);mTitleTextView.setSingleLine();mTitleTextView.setEllipsize(TextUtils.TruncateAt.END);if (mTitleTextAppearance != 0) {mTitleTextView.setTextAppearance(context, mTitleTextAppearance);}if (mTitleTextColor != null) {mTitleTextView.setTextColor(mTitleTextColor);}}if (!isChildOrHidden(mTitleTextView)) {addSystemView(mTitleTextView, true);}} else if (mTitleTextView != null && isChildOrHidden(mTitleTextView)) {removeView(mTitleTextView);mHiddenViews.remove(mTitleTextView);}if (mTitleTextView != null) {mTitleTextView.setText(title);}mTitleText = title;
}
8-10行
设置文本样式 11-13行
设置文本颜色
4、github地址
qinweiforandroid/QAppbar (github.com)
如有问题可以与我联系 QQ:435231045 请注明来源
Android Toolbar 居中相关推荐
- Android Toolbar配合menu使用详解
Android Toolbar配合menu使用详解 Toolbar使用 普通menu使用 上下文menu使用: PopupMenu菜单: 历史上的今天(2021.3.5): 1898年3月5日,周恩来 ...
- android toolbar控件,Android Toolbar控件
1. Toolbar类 Toolbar是替代ActionBar的产物,低版本可以使用v7兼容包,使用Theme.AppCompat主题,并添加配置. false true 2. Toolbar配置 主 ...
- Android Toolbar设置向上箭头,标题等
Android Toolbar设置向上箭头,标题等 标签: android布局 2016-07-25 22:58 1163人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得 ...
- 最详细的 Android Toolbar 开发实践总结一
最详细的 Android Toolbar 开发实践总结 2016-02-25 分类:Android开发.编程开发.首页精华12人评论 来源:D_clock 分享到:更多12 过年前发了一 ...
- Android的布局有哪几种,Android布局居中的几种做法
Android的布局文件中,如果想让一个组件(布局或View)居中显示在另一个布局(组件)中,可以由这么几种做法: android:layout_gravity android:gravity and ...
- toolbar标题居中android,Toolbar实现标题居中效果
Toolbar用的非常多,可定制,很灵活. 它默认title是在toolbar内部左侧,其实这本没有什么,但是大家都把title往中间挪. 找了一下,没有找到设置title位置的方法,看大家都是往To ...
- Android Toolbar 标题居中及字体样式自定义
首先找到 toolbar 所在xml布局文件,将toolbar控件放置在一个相对布局(RelativeLayout)中,然后设置 toolbar 的 title 为空(在 title 属性栏中随便打几 ...
- Android - toolbar navigation 样式
1.修改title 边距 修改边距使用系统的app属性来引入使用,即: xmlns:app="http://schemas.android.com/apk/res-auto" 1 ...
- android toolbar 开发总结
1.如何设置右边菜单距离右边的距离 在xml里面 <android.support.v7.widget.Toolbarxmlns:android="http://schemas.and ...
最新文章
- 金士顿u盘量产工具_与时俱进,金士顿双接口优盘支持Type C接口
- 为什么说BCH是最安全的数字货币之一?
- stm32 sdio acmd41 无响应。一直是返回0x3f。解决方法是清除crc错误中断
- 就是这么迅猛的实现搜索需求--转
- 全球及中国有机肥料行业投资价值与营销品牌战略报告2022版
- CF1654F-Minimal String Xoration【倍增】
- Lucene4:创建查询,并高亮查询关键词
- 问题解决 xenapp6/6.5发布资源管理器explorer应用不能打开 一闪而过
- yii mysql条件查询_mysql – 在Yii2 find()/ QueryBuilder中使用WHERE条件的SELECT子查询
- MagicDraw UML 16.8 安装教程(2)-破解补丁
- poj 3660 Cow Contest floyd 传递闭包!!基础
- 大型体检系统源码,PEIS医院体检管理系统源码
- 代码雨【code rain】 cmd 命令快速实现 + java 实现
- 收藏多年的MySQL函数大全笔记,笔记一生一起走,那些日子不再有!
- 网络爬虫法即将出台!!!小爬怡情,大爬over
- 最网最全python框架--scrapy(体系学习,爬取全站校花图片),学完显著提高爬虫能力(附源代码),突破各种反爬
- fi sap 凭证冲销 稅_SAP FI 系列 (019) - 会计凭证的冲销和反记账
- 仿猫眼电影在线选座组件
- Linux驱动学习12(初步认识内存管理)
- UEFI 基础教程 (十四) - 设置默认启动项为UEFI Shell