高拓展高自定义性TitleBar,完美替代Android系统默认

3 篇文章 0 订阅
自定义标题栏布局,沉浸式支持,标题栏图片背景,可自定义等

TitleBar 直通车

介绍

  • 支持自定义标题栏布局,支持XML中直接以子布局编写
  • 支持自定义前景布局,如显示Loading效果
  • 支持自定义背景布局,如图片等
  • 支持自定义底部分割线,可以投影效果显示在外部
  • 支持自适应状态栏暗亮色图标模式,可实时动态刷新

 

示例图片

1

 

集成方式

allprojects {
	repositories {
		...
		maven { url 'https://www.jitpack.io' }
	}
}
dependencies {
	  implementation 'com.github.ZLYang110:TitleBar:1.0.1'

}

使用方式

布局文件引用

<com.zlylib.titlebarlib.ActionBarCommon
    android:id="@+id/abc"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:background="#ccffffff"
    app:ab_autoImmersion="false"
    app:ab_bottomLineColor="@color/line"
    app:ab_bottomLineHeight="0dp"
    app:ab_foregroundLayerLayout="@layout/loading_bar"
    app:ab_statusBarColor="@color/transparent"
    app:ab_statusBarMode="dark"
    app:ab_statusBarVisible="false"
    app:ab_titleBarHeight="48dp"
    app:abc_leftIconColor="@color/black"
    app:abc_leftIconRes="@mipmap/back"
    app:abc_leftText="返回"
	app:abc_leftTextPaddingLeft="0dp"
	app:abc_leftTextPaddingRight="0dp"
	app:abc_rightIconColor="@color/black"
	app:abc_rightIconRes="@mipmap/search"
	app:abc_rightText="确定"
    app:abc_rightTextPaddingLeft="0dp"
    app:abc_rightTextPaddingRight="0dp"
    app:abc_titleText="标题"
	app:abc_titleTextMaxWidth="180dp" />

代码中绑定事件

abc.setOnLeftIconClickListener(new OnActionBarChildClickListener() {
    @Override
    public void onClick() {
    	Toast.makeText(context, "onLeftIconClick", Toast.LENGTH_SHORT).show()
    }
});

 属性介绍

<!--是否开启自动沉浸状态栏,默认为true-->
<attr name="ab_autoImmersion" format="boolean" />
<!--背景层布局,优先级高于背景层为图片-->
<attr name="ab_backgroundLayerLayout" format="reference" />
<!--背景层为图片-->
<attr name="ab_backgroundLayerImageRes" format="reference" />
<!--是否显示状态栏,默认为true-->
<attr name="ab_statusBarVisible" format="boolean" />
<!--状态栏颜色,默认透明-->
<attr name="ab_statusBarColor" format="color|reference" />
<!--状态栏图标颜色模式,默认light-->
<attr name="ab_statusBarMode" format="enum">
    <enum name="light" value="0" />
    <enum name="dark" value="1" />
</attr>
<!--点击关闭Activity控件ID-->
<attr name="ab_clickToFinish" format="reference" />
<!--主体层布局-->
<attr name="ab_titleBarLayout" format="reference" />
<!--主体层高度,默认为48dp-->
<attr name="ab_titleBarHeight" format="dimension|reference" />
<!--底部分割线高度,默认为0dp-->
<attr name="ab_bottomLineHeight" format="dimension|reference" />
<!--底部分割线颜色,默认透明-->
<attr name="ab_bottomLineColor" format="color|reference" />
<!--底部分割线资源引用,默认透明-->
<attr name="ab_bottomLineResId" format="reference" />
<!--底部分割线位于ActionBar外部,可实现投影效果-->
<attr name="ab_bottomLineOutside" format="boolean|reference" />
<!--前景层布局-->
<attr name="ab_foregroundLayerLayout" format="reference" />

等等..

详情请参考示例代码...

### THANKS

---

 ActionBarEx

最后

给个star


————————————————
版权声明:本文为CSDN博主「Mo-Sun」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gvvbn/article/details/106902079

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值