TitleLayout——一个Android轻松实现标题栏的库
TitleLayout
- 多功能、通用的、可在布局或者使用Java代码实现标题栏;
- 支持沉浸式状态栏;
- 支持左侧返回按钮不需要手动实现页面返回;
- 支持左侧按钮,中间标题,右边按钮点击
- 左侧支持图片+文字、单独图片、单独文字;右侧支持单独图片、单独文字等。
图片有点虚,请见谅
堆码不易,star支持,万分感谢
欢迎关注:
Github 地址:https://github.com/SiberiaDante/TitleLayout
博客园:http://www.cnblogs.com/shen-hua/
email: 994537867@qq.com
Android开发必备经典收藏集(整理中)
Android开发常备工具整理中
重点说明:
- 若左侧文字或者按钮为返回键,只需要布局中使用如下代码即可;
dante:d_is_back_view="true"
或者Java代码中
titleLayout.setIsLeftBackView(true)
无须在设置onClickListener,this.finish等;如有特殊需要,可设置属性为false,实现方法:
setLeftClickListener(OnClickListener listener)
- 若项目中使用了沉浸式状态栏,则需要在布局中
dante:d_is_immersive_state_bar="true"
- 设置页面为沉浸式状态栏方法:
ScreenUtil.setStatusTranslucent(this);
Gradle依赖:
dependencies {
compile 'com.github.SiberiaDante:TitleLayout:v1.0.1'
}
在布局中使用:
<com.siberiadante.titlelayoutlib.TitleBarLayout
android:id="@+id/title_layout_one"
android:layout_width="match_parent"
android:layout_height="wrap_content"
dante:d_is_back_view="true"
dante:d_is_immersive_state_bar="true"
dante:d_left_image="@mipmap/back_gray"
dante:d_left_image_padding_start="10dp"
dante:d_left_image_width="30dp"
dante:d_left_text="测试"
dante:d_left_text_color="@color/black"
dante:d_left_text_padding_start="10dp"
dante:d_left_text_size="14sp"
dante:d_line_height="1px"
dante:d_right_text="举报"
dante:d_right_text_color="@color/white"
dante:d_right_text_size="14sp"
dante:d_title_color="@color/black"
dante:d_title_layout_background="@color/red"
dante:d_title_layout_height="45dp"
dante:d_title_size="18sp"
dante:d_title_text="这里是标题" />
使用Java代码:
TitleBarLayout titleBarLayout = (TitleBarLayout) findViewById(R.id.title_layout);
titleBarLayout.setTitleClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
LogUtil.d("title 被点击了");
}
});
//设置Titlesize
titleBarLayout.setTitleSize(30);
//一键设置标题样式
titleBarLayout.setTitleStyle("我是标题", 18, ContextCompat.getColor(this, R.color.action_sheet_blue));
titleBarLayout.setRightImageClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
LogUtil.d("右边图片被点击了");
}
});
其他属性说明
xml中的属性:
xml属性 | 属性说明 |
---|---|
d_left_image | 左边图片资源 |
d_left_image_width | 左边图片宽(高为匹配父布局) |
d_left_image_padding_start | 左边图片左边距(默认10dp) |
d_left_text | 左边文字资源 |
d_left_text_size | 左边文字大小(默认16SP) |
d_left_text_color | 左边文字颜色(默认黑色) |
d_left_text_style | 后续完善该属性</td> |
d_left_text_padding_start | 左边文字左边距(默认10dp) |
d_title_text | 中间标题文字资源 |
d_title_size | 中间标题文字大小(默认18SP) |
d_title_color | 中间标题文字颜色(默认黑色) |
d_title_style | 后续完善该属性 |
d_right_text | 右边文字资源 |
d_right_text_color | 右边文字颜色 |
d_right_text_size | 右边文字大小(默认16sp) |
d_right_text_style | 后续完善该属性 |
d_right_text_padding_end | 右边文字距离右边距 |
d_right_image | 右边图片资源 |
d_right_image_width | 右边图片宽度,高度为匹配父布局 |
d_right_image_padding_end | 右边图片距离右边距 |
d_line_height | 标题栏底部横线高度(默认1px,建议单位使用px) |
d_line_background | 标题栏底部横线背景颜色(默认黑色) |
d_title_layout_height | 标题栏整体高度(默认45dp) |
d_is_back_view | 左侧文字和图片是否为返回键,若是返回键,则自带返回前一页面功能 |
d_is_immersive_state_bar | 是否是沉浸式状态栏,默认false,(为true时标题栏高度包含状态栏高度) |
Java 代码中
Java代码方法 | Java代码方法说明 |
---|---|
setTitle(CharSequence title) | 设置标题资源 |
setTitleSize(int titleSize) | 设置标题字体大小 |
setTitleColor(int titleColor) | 设置标题字体颜色 |
setTitleStyle(String title, int titleSize, int titleColor) | 设置标题资源、文字大小、文字颜色 |
>setLeftText(String leftText) | 设置左侧文字 |
>setLeftTextSize(int leftTextSize) | 设置左侧文字大小 |
setLeftTextColor(int leftTextColor) | 设置左侧文字颜色 |
setLeftStyle(String leftText, int leftTextSize, int leftTextColor) | 设置左侧文字、文字大小、文字颜色 |
setRightText(String rightText) | 设置右侧文字 |
setRightTextSize(int rightTextSize) | 设置右侧文字大小 |
setRightTextColor(int rightTextColor) | 设置右侧文字颜色 |
setTitleClickListener(OnClickListener listener) | 标题点击监听 |
setLeftClickListener(OnClickListener listener) | 左侧文字和按钮点击监听 |
setRightTextClickListener(OnClickListener listener) | 右侧文字点击监听 |
setRightImageClickListener(OnClickListener listener) | 右侧按钮点击监听 |
setIsLeftBackView(boolean isLeftBackView) | 设置左侧文字和按钮是否为返回按钮 |
堆码不易,star支持,万分感谢
欢迎关注:
博客园:http://www.cnblogs.com/shen-hua/
email: 994537867@qq.com
Android开发必备经典收藏集(整理中)
Android开发常备工具整理中
[源码GitHub地址]:https://github.com/SiberiaDante/TitleLayout
TitleLayout——一个Android轻松实现标题栏的库的更多相关文章
- TitleLayout——一个Android轻松实现通用、标准、支持沉浸式状态栏的标题栏库
TitleLayout 多功能.通用的.可在布局或者使用Java代码实现标题栏:支持沉浸式状态栏,支持左侧返回按钮(不需要手动实现页面返回),左侧支持图片+文字.图片.文字:右侧支持图片.文字等. 堆 ...
- 一个android的各种控件库
在这里 https://github.com/Trinea/android-open-project 很多的listview,非常棒
- 如何把一个android工程作为另外一个android工程的lib库
http://zhidao.baidu.com/question/626166873330652844 一个工程包含另一个工程.相当于一个jar包的引用.但又不是jar包反而像个package 在网上 ...
- Android非常有用的开源库介绍整理
Android开源库 自己一直很喜欢Android开发,就如博客副标题一样,我想做个好的App. 在摸索过程中,GitHub上搜集了很多很棒的Android第三方库,推荐给在苦苦寻找的开发者,而且我会 ...
- Android 2018最新的三方库
文章出处https://blog.csdn.net/qq_32368129/article/details/78749880 1.MaterialStepperView 它是用Material Des ...
- Android:日常学习笔记(2)——分析第一个Android应用程序
Android:日常学习笔记(2)——分析第一个Android应用程序 Android项目结构 整体目录结构分析 说明: 除了APP目录外,其他目录都是自动生成的.APP目录的下的内容才是我们的工作重 ...
- 从0系统学Android--1.3创建你的第一个 Android 项目
1.3 创建你的第一个 Android 项目 环境搭建完成后,我们就可以写下我们的第一个项目了. 1.3.1 创建 HelloWorld 项目 在 Android Studio 的欢迎页面点击 Sta ...
- 各种Android UI开源框架 开源库
各种Android UI开源框架 开源库 转 https://blog.csdn.net/zhangdi_gdk2016/article/details/84643668 自己总结的Android开源 ...
- 用Kotlin创建第一个Android项目(KAD 01)
原文标题:Create your first Android project using Kotlin (KAD 01) 作者:Antonio Leiva 时间:Nov 21, 2016 原文链接:h ...
随机推荐
- HAUT--1262--魔法宝石(暴力)
1262: 魔法宝石 时间限制: 2 秒 内存限制: 64 MB提交: 525 解决: 157提交 状态 题目描述 小s想要创造n种魔法宝石.小s可以用ai的魔力值创造一棵第i种魔法宝石,或是使用 ...
- Android Studio 或 IntelliJ IDEA获取数字签名的方法
原先在 Eclipse中 数字签名(SHA1或MD5)的获取方法 为: 点击 Eclipse导航栏的Windows --> Preference --> Android --> Bu ...
- 【HTTP权威指南】第二章-URL与资源
[统一资源定位符URL]通过位置来标示资源,其表达的格式如下:https://item.jd.com/523961.html 第一部分(https)是方案,告知客户端要[怎样访问],这里使用的是htt ...
- [STM32F429-DISCO-HAL]4.Uart 的使用
今天来学习一下最常用的外设之一USART. 首先是硬件的连接,我们需要至少三根线,GND,TX,RX.参阅datasheet.默认的USART1_TX和USART1_RX的引脚如下图 关于HAL dr ...
- 【NO.5】jmeter-结果文件
Jmeter的结果文件可以保存很多内容,你需要看哪个就勾选哪个,很简单是吧. 结果文件可以保存为2种形式:XML或者CSV.我印象里在书上提到过,如果保存为XML形式的结果文件,后续可以转化为表格便于 ...
- Spring (三)
1.1 Spring的事务管理 1.1.1事务 事务:指的是逻辑上一组操作,要么全部成功,要么全部失败. 事务特性: 原子性:事务不可分割. 一致性:事务执行前后,数据完整性保存一致. 隔离性:一个事 ...
- localStorage与sessionStorage区别
localStorage与sessionStorage区别:浏览器正常模式下: 关闭浏览器或该窗口标签时,localStorage数据依然保存,但是sessionStorage数据会被清除. ...
- Linux工具参考篇(网摘)
Linux工具参考篇 原文出处:[Linux Tools Quick Tutorial] 1. gdb 调试利器 2. ldd 查看程序依赖库 3. lsof 一切皆文件 4. ps 进程查看器 5. ...
- 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——收流篇:(四)example代码解析
一.example逻辑伪码 myRTSPClient附带3个example程序:simple_example.complete_example.common_example.后两个example都是从 ...
- Nuget安装nupkg文件
问题描述: VS出现故障不能使用Manage NuGet Package自动下载安装DLL 解决方案: 直接官网下载相关需要的DLL 在VS中使用console加载本地下载的包安装 控制台code参考 ...