ATE.java 文件源码

java
阅读 27 收藏 0 点赞 0 评论 0

项目:app-theme-engine-master 作者:
public static void preApply(@NonNull Activity activity, @Nullable String key) {
    didPreApply = activity.getClass();
    mToolbar = null;

    int activityTheme = activity instanceof ATEActivityThemeCustomizer ?
            ((ATEActivityThemeCustomizer) activity).getActivityTheme() : Config.activityTheme(activity, key);
    if (activityTheme != 0) activity.setTheme(activityTheme);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        final Window window = activity.getWindow();
        if (Config.coloredStatusBar(activity, key))
            window.setStatusBarColor(Config.statusBarColor(activity, key));
        else window.setStatusBarColor(Color.BLACK);
        if (Config.coloredNavigationBar(activity, key))
            window.setNavigationBarColor(Config.navigationBarColor(activity, key));
        else window.setNavigationBarColor(Color.BLACK);
        applyTaskDescription(activity, key);
    }
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        final View decorView = activity.getWindow().getDecorView();
        boolean lightStatusEnabled = false;
        if (Config.coloredStatusBar(activity, key)) {
            final int lightStatusMode = Config.lightStatusBarMode(activity, key);
            switch (lightStatusMode) {
                case Config.LIGHT_STATUS_BAR_OFF:
                default:
                    break;
                case Config.LIGHT_STATUS_BAR_ON:
                    lightStatusEnabled = true;
                    break;
                case Config.LIGHT_STATUS_BAR_AUTO:
                    lightStatusEnabled = Util.isColorLight(Config.primaryColor(activity, key));
                    break;
            }
        }

        final int systemUiVisibility = decorView.getSystemUiVisibility();
        if (lightStatusEnabled) {
            decorView.setSystemUiVisibility(systemUiVisibility | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
        } else {
            decorView.setSystemUiVisibility(systemUiVisibility & ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
        }
    }

    // MD integration
    if (Config.usingMaterialDialogs(activity, key)) {
        final ThemeSingleton md = ThemeSingleton.get();
        md.titleColor = Config.textColorPrimary(activity, key);
        md.contentColor = Config.textColorSecondary(activity, key);
        md.itemColor = md.titleColor;
        md.widgetColor = Config.accentColor(activity, key);
        md.linkColor = ColorStateList.valueOf(md.widgetColor);
        md.positiveColor = ColorStateList.valueOf(md.widgetColor);
        md.neutralColor = ColorStateList.valueOf(md.widgetColor);
        md.negativeColor = ColorStateList.valueOf(md.widgetColor);
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号