沉浸式状态栏框架-SystemBarTint
Posted 六月June June
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了沉浸式状态栏框架-SystemBarTint相关的知识,希望对你有一定的参考价值。
为什么要使用沉浸式状态栏呢?
--为了用户体验。
因为有的app界面的风格都是差不多的,比如支付宝,用的蓝色调风格,为了让状态栏看起来不那么突兀,我们可以使用沉浸式状态栏。
沉浸式状态栏在游戏app中用的比较多,也是为了用户体验。好了,废话不多说,直接来了解一下如何使用吧。
1.添加依赖
compile 'com.readystatesoftware.systembartint:systembartint:1.0.3'
2.在基类BaseActivity中写初始化沉浸式状态栏的方法
这样所有子类Activity都能设置自己的状态栏的颜色
public class BaseActivity extends AppCompatActivity
/**
* 设置沉浸式状态栏的方法
*/
protected void initStatusBar(int color)
//如果想支持4.4以上版本,需要将状态栏设置成透明的才能着色。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) //KITKAT表示是4.4版本
Window win = getWindow();
WindowManager.LayoutParams winParams = win.getAttributes();
//WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS含义为状态栏透明
winParams.flags |= WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;
win.setAttributes(winParams);
SystemBarTintManager tintManager = new SystemBarTintManager(this); //着色管理器
tintManager.setStatusBarTintEnabled(true);//设置支持着色
tintManager.setStatusBarTintColor(color);//指设置颜色
3.在子类Activity中重写父类initStatusBar()方法
public class MainActivity extends BaseActivity
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initStatusBar(Color.parseColor("#39AEFF"));//重写父类方法,修改状态栏颜色
运行效果:
以上是关于沉浸式状态栏框架-SystemBarTint的主要内容,如果未能解决你的问题,请参考以下文章