您的位置:首页 > 移动开发 > Android开发

实现Android透明状态栏(或叫沉浸式状态栏)

2017-09-19 13:53 295 查看
最近接触到一个项目,发现了一个实现透明状态栏的第三方jar包,感觉挺好用的,跟大家分享一下。

github地址:https://github.com/jgilfelt/SystemBarTint

AS导入地址:compile ‘com.readystatesoftware.systembartint:systembartint:1.0.3’

在项目中使用时,可以封装成一个方法:

public void change_status_color(Activity activity,int color){
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
// 透明状态栏
activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
// 获取第三方jar包对象
SystemBarTintManager tintManager = new SystemBarTintManager(activity);
// 激活状态栏设置
tintManager.setStatusBarTintEnabled(true);
// 设置一个颜色给系统栏
tintManager.setTintColor(color);
}
}


帮助文档中涉及的方法:

//获取对象

SystemBarTintManager tintManager = new SystemBarTintManager(this);

//启用状态栏颜色

tintManager.setStatusBarTintEnabled(true);

//启用导航栏颜色

tintManager.setNavigationBarTintEnabled(true);

// 所有系统设置一个自定义色彩颜色

tintManager.setTintColor(Color.parseColor(“#99000FF”));

// 设置一个自定义导航栏的资源

tintManager.setNavigationBarTintResource(R.drawable.my_tint);

// 设置一个自定义状态栏可拉的

tintManager.setStatusBarTintDrawable(MyDrawable);

另附几篇参考文章:

1、鸿洋大神讲解实现透明状态栏(或叫沉浸式状态栏)

http://blog.csdn.net/lmj623565791/article/details/48649563

2、Android 系统状态栏沉浸式/透明化完整解决方案

http://www.jianshu.com/p/34a8b40b9308
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: