系统的夜间模式切换



 在所有Activity的基类中初始化显示哪种模式
 private void initDayNightMode() {
        if ((boolean)SPUtils.get(this,AppConfig.NIGHT_THEME_MODE,false)) {//获取保存的是哪个肤色
            AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
        } else {
            AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
        }
    }

下面两个方法去手动切换
//切换到夜间模式
 public void changeToNight() {
SPUtils.put(oThis, AppConfig.NIGHT_THEME_MODE, true);
        getDelegate().setLocalNightMode(AppCompatDelegate.MODE_NIGHT_YES);
    }
//切换到白天模式
    public void changeToDay() {
SPUtils.put(oThis, AppConfig.NIGHT_THEME_MODE, false);
        getDelegate().setLocalNightMode(AppCompatDelegate.MODE_NIGHT_NO);
    }

 最后一点就是创建带-night资源文件夹


至此就可以实现白夜间模式切换了

发布了30 篇原创文章 · 获赞 13 · 访问量 6万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章