一个简单易用的 Android 导航栏TitleBar

时间:2022-04-26
本文章向大家介绍一个简单易用的 Android 导航栏TitleBar,主要内容包括1、左边文字,左边返回图片,左边点击事件、2、中间文字、3、右边action按钮或者文字、4、下划分割线、5、一行代码适配沉浸式、6、一行代码设置TitleBar高度、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

一个简单易用的导航栏TitleBar,可以轻松实现IOS导航栏的各种效果。

一个简单易用的导航栏TitleBar,可以轻松实现IOS导航栏的各种效果整个代码全部集中在TitleBar.java中,所有控件都动态生成,动态布局。不需要引用任何资源文件,拷贝TitleBar.java到自己工程即可使用。

1、左边文字,左边返回图片,左边点击事件

左边可设置图片,文字单独显示,也可以设置图片文字同时显示

titleBar.setLeftImageResource(R.mipmap.back_green);

titleBar.setLeftText("返回");
titleBar.setLeftTextColor(Color.WHITE);
titleBar.setLeftClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});

2、中间文字

中间文字根据左右控件始终居中显示,自动排版

titleBar.setTitle("文章详情");
titleBar.setTitleColor(Color.WHITE);

3、右边action按钮或者文字

通过addAction添加操作控件,通过removeAction删除控件。可以使用图片或者文字。

titleBar.setActionTextColor(Color.WHITE);
mCollectView = (ImageView) titleBar.addAction(new TitleBar.ImageAction(R.mipmap.collect) {
@Override
public void performAction(View view) {
Toast.makeText(MainActivity.this, "点击了收藏", Toast.LENGTH_SHORT).show();
mCollectView.setImageResource(R.mipmap.fabu);
}
});


titleBar.addAction(new TitleBar.TextAction("发布") {
@Override
public void performAction(View view) {
Toast.makeText(MainActivity.this, "点击了发布", Toast.LENGTH_SHORT).show();
}
});

4、下划分割线

titleBar.setDividerColor(Color.GRAY);

5、一行代码适配沉浸式

如果你的项目使用了沉浸式,布局时候加上这行代码,TitleBar会自动填充状态栏

titleBar.setDividerColor(Color.GRAY);

6、一行代码设置TitleBar高度

如果你的TitleBar没有固定高度,会默认设置48dip作为高度,你也可以自定义高度

titleBar.setHeight(48 * 2);