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

android实现沉浸式之systembartintmanager

2015-12-01 15:26 411 查看
android 4.4 提供了一套能透明的系统ui样式给状态栏和导航栏,这样的话就不用向以前那样每天面对着黑乎乎的上下两条黑栏了,还可以调成跟activity 一样的样式,形成一个完整的主题。

这里简单的方法介绍就不说了,有一个很好用的第三方systembartintmanager , github地址为:https://github.com/jgilfelt/SystemBarTint

使用前在gradle中添加

compile 'com.readystatesoftware.systembartint:systembartint:1.0.3'


用法如下

1,判断当前手机系统是否是4.4以上

if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {
return;
}


2,初始化 SystemBarTintManager

SystemBarTintManager tintManager = new SystemBarTintManager(TabMainActivity.this);
tintManager.setStatusBarTintEnabled(true);
tintManager.setStatusBarTintResource(R.color.bg_traceparent);//通知栏所需颜色
// set a custom tint color for all system bars
tintManager.setTintColor(Color.parseColor("#99000FF"));
// set a custom navigation bar resource
tintManager.setNavigationBarTintResource(R.drawable.ic_launcher);

3,设置显示与隐藏

@TargetApi(19)
private void setTranslucentStatus(boolean on) {
Window win = getWindow();
WindowManager.LayoutParams winParams = win.getAttributes();
final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;
if (on) {
winParams.flags |= bits;
} else {
winParams.flags &= ~bits;
}
win.setAttributes(winParams);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: