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. YoutubeAPI使用

    YoutubeAPI使用 1  Youtube API能干什么 2  Youtube API 2.0 Youtube简介 2.1 如何使用Youtube API 2.1.1 获取Youtube 的开发 ...

  2. dcos下rexray服务的配置

    在dcos环境下,rexray服务的默认配置文件为/opt/mesosphere/etc/rexray.conf,而其服务文件则是 /etc/systemd/system/dcos-rexray.se ...

  3. .net网站部署时错误——未能加载文件或程序集(Could not load file or assembly)——的解决

    Could not load file or assembly 'System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, PublicKe ...

  4. Ubuntu解压windows下的.zip文件出现乱码的解决办法

    乱码类似这样的:╫╩┴╧╖┤╤▌▓т╒╛╦┘╢╚│ 这个主要是因为zip文件对文件名的编码默认为当前环境的locale,如在windows下压缩的zip文件,在linux下其中的中文名便会乱码.这是z ...

  5. 20个Flutter实例视频教程-第03节: 不规则底部工具栏制作-1

    第03节: 不规则底部工具栏制作-1 博客地址: https://jspang.com/post/flutterDemo.html#toc-973 视频地址: https://www.bilibili ...

  6. C#backgroundWorker用法

    1.在 WinForms 中,有时要执行耗时的操作,在该操作未完成之前操作用户界面,会导致用户界面停止响应.解决的方法就是新开一个线程,把耗时的操作放到线程中执行,这样就可以在用户界面上进行其它操作. ...

  7. MYSQL5.7版本解决sql_mode=only_full_group_by问题

    在安装有些二开框架时会遇到下面的问题,在填写完数据库密码之后他会提示你请在mysql配置文件中修改ql-mode去掉ONLY_FULL_GROUP_BY,但是我们去mysql的配置文件中查找此配置,有 ...

  8. oracle的日期数据类型

    https://blog.csdn.net/qq_33573235/article/details/78154928(转)

  9. 洛谷P4884 多少个1?(BSGS)

    传送门 模数好大……__int128好麻烦……而且BSGS第一次写有点写蒙了…… $11...1(N个1)\equiv k(mod m)$很难算,那么考虑转化一下 先把$11...1(N个1)$写成$ ...

  10. 新手安装 hadoop、hive和hbase 笔记

    系统是ubuntu 12.04 , hadoop版本是1.2.1 , hive版本是0.12 , hbase版本我忘记了,不好意思首先是配置好hostnamevi /etc/hosts写入你要配置的i ...