2.XBaseAndroid标题栏组件与状态栏组件使用
2018-01-02 本文已影响175人
往后余生9375
XBaseAndroid
项目地址:https://github.com/fanhua1994/XBaseAndroid
演示地址:https://github.com/fanhua1994/XBaseAndroidDemo
QQ主界面
QQ聊天首页.png想必大家都使用过QQ,QQ的标题栏和状态栏都是同一种颜色,也就是我们常说的(沉浸式),这样实现出来的界面还是相当好看的。今天我们就来使用XBaseAndroid实现。如果你还不知道如何初始化XBaseAndroid请看这篇文章。
进入正题
首先我们要实现QQ这种效果,需要设置状态栏颜色和标题栏颜色,XBaseAndroid的默认主题颜色与QQ是相近的,如果您的APP的主题颜色不一致,您就需要自定义颜色。
第一步、设置状态栏颜色
StatusBarCompat.setStatusBarColor(this, Color.parseColor(ColorUtils.changeColor(this,R.color.main_color)));
7EC1F6F4598144FCFC873799611D5C34.jpg
第二步、设置标题栏组件
这里我们就不再更改主题色,使用XBaseAndroid默认的蓝色,如需修改添加一下该属性
app:titleBarBackground="@color/white"
。打开activity_main.xml 添加已下控件。
<com.hengyi.baseandroidcore.weight.XBaseTitleBar
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/titleBar"
android:layout_width="match_parent"
app:titleBarTitle="XBaseAndroid"
app:titleBarLeftImage="@drawable/icon_back"
android:layout_height="50dp">
E27449471F35BE76CEF82D223BE253D4.jpg
为标题栏添加事件
@BindView(R.id.titleBar)EaseTitleBar easeTitleBar;
easeTitleBar.setLeftLayoutClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
ActivityStack.getInstance().popActivity();//关闭当前界面
ActivityUtils.kill();//杀死当前APP进程
}
});
自定义标题栏
//状态栏设置
StatusBarCompat.setStatusBarColor(this, Color.parseColor(ColorUtils.changeColor(this,R.color.my_main_color)));
//标题栏设置 easeTitleBar.setBackgroundColor(getResources().getColor(R.color.my_main_color));
若您的运行情况出现问题或不一致,请下载demo比对
繁华安卓