Android沉浸式状态栏三方库Immersionbar覆盖基类

1.在Android多个系统版本兼容的情况下,选择一款合适的方案做通知栏时很关键的,话不多说直接上三方库https://github.com/gyf-dev/ImmersionBar
2.问题一般我们设置是在基类中的OnCreate方法声明,在OnDestory方法中销毁,但是有的时候页面需要沉浸式,或者不一样的通知栏,之前我也觉得是直接在子类Activity中再声明一遍不就OK了,结果没个卵用

用法:
创建
       ImmersionBar.with(this)
                .statusBarColor(R.color.transparent)     //状态栏颜色,不写默认透明色
                .statusBarDarkFont(true) //原理:如果当前设备支持状态栏字体变色,会设置状态栏字体为黑色,如果当前设备不支持
                 状态栏字体变色,会使当前状态栏加上透明度,否则不执行透明度
                .fitsSystemWindows(true)
                .keyboardEnable(true)
                .navigationBarColor(R.color.virtual_buttons)
                .init();
销毁
  ImmersionBar.with(this).destroy();

3.加入子类activity要沉浸式代码怎么办呢
-在oncreat方法中先销毁

        ImmersionBar.with(this).destroy();
        ImmersionBar.with(this)
                .titleBar(null, false)
                //.transparentBar()
                .statusBarDarkFont(true)
                //.fullScreen(true)
                .navigationBarColor(R.color.virtual_buttons)
                .init();

-接着在onDestroy()中销毁

     ImmersionBar.with(this).destroy();

4.这样就行了,如果需要更炫酷的用法就去看看文档和demo,很实用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。