Skip to content

Android7.0及以后沉浸式状态栏变灰问题

在activity setContentView 之前,使用反射修改DecorViewmSemiTransparentStatusBarColor颜色。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
    try {
        Class decorViewClazz = Class.forName("com.android.internal.policy.DecorView");
        Field field = decorViewClazz.getDeclaredField("mSemiTransparentStatusBarColor");
        field.setAccessible(true);
        field.setInt(getWindow().getDecorView(), Color.TRANSPARENT);  // 改为透明
    } catch (Exception e) {
        Log.e(TAG, "onCreate: ", e);
    }
}

本站作者: rustfisher.com | rf.cs@foxmail.com
示例地址: AndroidTutorial Gitee, Tutorial Github | 反馈问题: -> Android issues - gitee
本文链接: https://www.an.rustfisher.com/android/ui/statusbar/android-7-adjust-status-bar-color/ |-> 本站文章最近更新
一家之言,仅当抛砖引玉。如有错漏,还请指出。下方的广告链接内容与本站无关。如果喜欢本站的内容,也可 -> 点击请作者喝咖啡 ,谢谢支持服务器。