github地址:https://github.com/buhuiming/BHMAndroid

  使用compile 'com.bhm.sdk.bhmlibrary:BHMLibrary:1.1.2'

一、TitleBar的使用

 

1.XML集成方式:

在layout文件中添加

<com.bhm.sdk.bhmlibrary.views.TitleBar
android:id="@+id/titleBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:titleBarHeight="50dp"
app:titleTextColor="@color/white"
app:rightTextColor="@color/white"
app:leftTextColor="@color/white"
app:titleText="标题"
app:rightText="完成"
app:leftText="返回"
app:leftViewBackgroundResource="@drawable/arrow_a"
app:isLeftViewShow="true"
app:isRightViewShow="true"
app:dividerHeight="1dp"
app:dividerColor="@color/black"
app:backGroundColor="@color/colorPrimary"/>

2.继承TitleBarActivity集成方式:

继承TitleBarActivity类, 重写setContentView和initTitleBar方法

@Override
public void initTitleBar(final TitleBar titleBar) {
titleBar.setTitleBarHeight(150f, false);
////titleBar.setTitleBarHeight(50f, true);
titleBar.setTitleTextColor(R.color.black);
titleBar.setRightTextColor(R.color.black);
titleBar.setLeftTextColor(R.color.black);
titleBar.setTitleText("集成Base");
titleBar.setRightText("提交");
titleBar.setLeftText("后退");
titleBar.setLeftViewBackgroundResource(R.drawable.img_close_source);
titleBar.setIsLeftViewShow(true);
titleBar.setIsRightViewShow(true);
titleBar.setDividerHeight(1f, false);
titleBar.setDividerColor(R.color.black);
titleBar.setBackGroundColor(R.color.white);
} @Override
public View setContentView() {
return LayoutInflater.from(this).inflate(R.layout.activity_extends_title_bar, rootView, false);
}

3.代码生成titleBar的方式:

    private TitleBar titleBar;
private View contentView;
@BindView(R.id.tv_text)
protected TextView tv_text; contentView = LayoutInflater.from(this).inflate(R.layout.activity_java_title_bar, null, false);
ButterKnife.bind(this, contentView);
titleBar = TitleBarBuilder.newBuilder(this)
.createTitleBar()
.setContentView(contentView)
.build()
.setTitleBarHeight(50f, true)
.setTitleTextColor(R.color.white)
.setRightTextColor(R.color.white)
.setLeftTextColor(R.color.white)
.setTitleText("代码生成")
.setRightText("提交")
.setLeftText("后退")
.setLeftViewBackgroundResource(R.drawable.arrow_a)
.setIsLeftViewShow(true)
.setIsRightViewShow(true)
.setDividerHeight(1f, false)
.setDividerColor(R.color.black)
.setBackGroundColor(R.color.colorPrimary);
tv_text.setText("ssssssssssssssss");

4.xml方法介绍:

app:titleBarHeight设置标题栏的高度,默认48dp
app:dividerHeight设置分割线的高度
app:backGroundColor设置标题栏的背景颜色,默认白色
app:titleTextColort设置标题的颜色,默认黑色
app:titleText设置标题文本
app:rightTextColor设置右边文字颜色,默认黑色
app:rightText设置右边文本
app:leftTextColor设置左边文字颜色,默认黑色
app:dividerColor设置分割线的颜色,默认颜色#e9e9eb
app:leftText设置左边文本
app:isLeftViewShow设置是否显示左边的文本和图标
app:isRightViewShow设置是否显示右边的文本和图标
app:leftViewBackgroundResource设置左边图标的资源
app:rightViewBackgroundResource设置右边图标的资源

5.java方法介绍:

setTitleBarHeight(float height, boolean isDpValue)设置标题栏的高度
setDividerHeight(float height, boolean isDpValue)设置分割线的高度
setDividerColor(int color)设置分割线的颜色
setBackGroundColor(int color)设置标题栏的背景颜色
setTitleText(String title)设置标题文本
setTitleTextColor(int color)设置文本颜色
setRightText(String title)设置右边文本
setRightTextColor(int color)设置右边文字颜色
setLeftText(String title)设置左边文本
setLeftTextColor(int color)设置左边文本颜色
setLeftOnClickListener(OnClickListener listener)设置左边控件点击事件
setRightOnClickListener(OnClickListener listener)设置右边控件点击事件
setTitleTextOnClickListener(OnClickListener listener)设置标题点击事件
setTitleBarOnClickListener(OnClickListener listener)设置标题栏点击事件
setTitleBarOnTwoClickListener(final OnTwoClickListener listener)设置标题栏双击事件
setIsLeftViewShow(boolean isLeftViewShow)设置左边控件是否显示
setIsRightViewShow(boolean isRightViewShow)设置右边控件是否显示
setLeftViewBackgroundResource(int res)设置左边图标的资源
setRightViewBackgroundResource(int res)设置右边图标的资源

此外还有一些获取控件的方法。详细用法请参考demo。

TitleBar(标题栏)的使用的更多相关文章

  1. Android界面架构(Activity,PhoneWiondow,DecorView)简介

    在一个Android应用程序中,用户界面通过View和ViewGroup对象构建.所有View的子类成为"Widget",所有ViewGroup的子类成为"Layout& ...

  2. 1.1 Activity

    1.概念 Application:由多个相关的松散的与用户进行交互Activity组成,通常被打包成apk后缀文件中: Activity:就是被用来进行与用户交互和用来与android内部特性交互的组 ...

  3. 从Android系统出发,分析Android控件构架

    从Android系统出发,分析Android控件构架 Android中所有的控件追溯到根源,就是View 和ViewGroup,相信这个大家都知道,但是大家也许会不太清楚它们之间的具体关系是什么,在A ...

  4. Android中将布局文件/View添加至窗口过程分析 ---- 从setContentView()谈起

    本文主要内容是讲解一个视图View或者一个ViewGroup对象是如何添加至应用程序窗口中的.下文中提到的窗口可泛指我们能看到的界面,包括一个Activity呈现的界面(我们可以将之理解为应用程序窗口 ...

  5. DOM文档对象总结

    DOM总结: DOM:文档对象模型document object model DOM三层模型: DOM1:将HTML文档封装成对象 DOM2:将XML文档封装成对象 DOM3:将XML文档封装成对象 ...

  6. Activity设置style透明后与SurfaceView合用引发的无形命案

    近期搞视频通话,SurfaceView是不可缺少的,因为启动视频要载入一些资源,比較耗时.会有1.2s黑屏的现象,为了改善用户体验,我们须要设置Activity的Theme为透明风格(QQ 也是如此) ...

  7. 自定义 Activity 的 标题栏 TitleBar

    自定义 Activity 的 标题栏 TitleBar 1. 修改标题栏的高度,背景 编辑styles.xml,添加: <?xmlversion="1.0" encoding ...

  8. Android 自定义Activity的标题栏(Titlebar)

    缺省的情况下,通常见到Activity的标题栏(Titlebar)是这样的(红色框内): HandleContacts是Activity的标题.有时候,我们希望能改变一下这样单调的状况.比如,要在标题 ...

  9. android标题栏(titlebar)显示进度条

    在后台线程中执行各种操作(网络连接.大数据存储)的时候,我们希望让客户能看到后台有操作在进行,那么既能有效的提示用户,又不占用当前操作空间,最好的方法就是在标题栏有个进度条. [代码] [Java]代 ...

随机推荐

  1. $bzoj4569$

    $st表+并查集$ $考虑暴力方法:我们每次将对应相等的位置用并查集连起来,那么最终答案就是9*10^{连通块个数-1}$ $很明显上面这个办法过不去,问题在于重复次数太多了,如果一个区间已经对应相等 ...

  2. HTML5/jQuery雷达动画图表 图表配置十分简单

    1.HTML5/jQuery雷达动画图表 图表配置十分简单 之前我们介绍过不少形形色色的HTML5图表了,像这款HTML5折线图表Aristochart是一款很不错的折线图表,这款HTML5 Canv ...

  3. 深入Mybatis配置文件

    Configuration是干嘛的 Configuration就像是Mybatis的总管,Mybatis的所有配置信息都存放在这里,此外,它还提供了设置这些配置信息的方法.Configuration可 ...

  4. Python 之IO模型

    阻塞IO模型:以前写的套接字通信都是阻塞型的.通过并发提高效率 非阻塞IO模型: from socket import * # 并不推荐使用,一是消耗cpu资源,二是会响应延迟 server = so ...

  5. Flutter实战视频-移动电商-27.列表页_现有Bug修复和完善

    27.列表页_现有Bug修复和完善 小解决小bug 默认右侧的小类没有被加载 数据加载完成后,就list的第一个子对象传递给provide进行赋值,这样右侧的小类就刷新了数据 默认加载了第一个类别 调 ...

  6. UVaLive 10859 Placing Lampposts (树形DP)

    题意:给定一个无向无环图,要在一些顶点上放灯使得每条边都能被照亮,问灯的最少数,并且被两盏灯照亮边数尽量多. 析:其实就是一个森林,由于是独立的,所以我们可以单独来看每棵树,dp[i][0] 表示不在 ...

  7. 【转】Maven 入门

    [转]http://www.blogjava.net/jiangshachina/archive/2006/09/01/67080.html   Maven入门--概念与实例  最近由于工作原因在研究 ...

  8. GPU渲染管线与shader

    1 几何阶段(顶点shader处理这部分) 模型坐标空间-世界坐标空间-观察坐标空间-屏幕坐标空间 其中从观察空间 到 屏幕空间需要经过3步(CVV单位立方体,规范立方体) a用透视变换矩阵把顶点从视 ...

  9. uoj#276. 【清华集训2016】汽水(分数规划+点分治)

    传送门 没想到点分治那一层-- 首先不难发现这是个分数规划,先把所有的边长减去\(k\),二分答案,设为\(mid\),就是要求路径平均值\(ans\in[-mid,mid]\) 先来考虑\(ans\ ...

  10. 集成Activiti工作流的J2EE快速开发框架

    框架简介 enos款快速开发模块化脚手架,实现功能有系统模块:菜单管理.用户管理.角色管理,系统监控:系统日志.接口api.sql监控. 系统功能 系统管理:菜单管理.用户管理.角色管理 统一查询 p ...