android透明状态栏 可切换白色或黑色主题颜色

    // Setup activity layout
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
   //透明状态栏
        getWindow().setStatusBarColor(Color.TRANSPARENT);
        getWindow().setFlags(FLAG_FORCE_NOT_FULLSCREEN | FLAG_LAYOUT_IN_SCREEN | FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS | FLAG_TRANSLUCENT_STATUS, -1);
 
    }
  
//切换颜色
    public void setSystemUiVisibility(int Dark) {
        var decorView = getWindow().getDecorView();
        boolean bDark = Dark > 0;
        if (decorView != null) {
            int vis = decorView.getSystemUiVisibility();
            if (bDark) {
                vis |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
            } else {
                vis &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
            }
            decorView.setSystemUiVisibility(vis);
        }
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容