Blankj/AndroidUtilCode

BarUtils 状态栏 亮色/暗色 模式设置低于5.0不能使用

Open

#1600 aperta il 3 feb 2022

Vedi su GitHub
 (2 commenti) (0 reazioni) (1 assegnatario)Java (10.654 fork)batch import
help wanted

Metriche repository

Star
 (33.679 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

BarUtils 状态栏 亮色/暗色 模式设置低于5.0不能使用

理论来说,应该是大于等于4.4的系统都可以设置 状态栏 亮色/暗色 模式,但是源码里直接写了大于等于5.0也就是M

少了一些版本,能不能添加上?

以下是源码:

/**
     * Set the status bar's light mode.
     *
     * @param window      The window.
     * @param isLightMode True to set status bar light mode, false otherwise.
     */
    public static void setStatusBarLightMode(@NonNull final Window window,
                                             final boolean isLightMode) {

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            View decorView = window.getDecorView();
            int vis = decorView.getSystemUiVisibility();
            if (isLightMode) {
                vis |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
            } else {
                vis &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
            }
            decorView.setSystemUiVisibility(vis);
        }
    }

Guida contributor