夜间模式需要sqlite吗?
Does the night mode need sqlite?
我只想知道Android中的夜间模式是否需要sqlite?
或者还有另一种方法可以在其中保存模式
当用户关闭应用程序并再次重新打开它时,它将保存模式
请帮忙
如果有其他方法请分享给我
谢谢
不,不需要sqlite。
夜间模式首选项等本地应用程序设置通常存储在 SharedPreferences
。
您可以在应用程序的 SharedPreferences 中保存一个变量,用于首选用户设置并在启动时设置主题。
查看文档以了解更多信息。SharedPreferences
请检查 Shared Preferences。这就是键值存储,正好适合这样的需求。
作为一般做法 - 创建一些 SharedPrefManager 并将所有具有共享首选项的逻辑移到那里。就像 this answer.
将此代码写在运行的第一个页面上
SharedPreferences pref = getApplicationContext().getSharedPreferences("nightMode", 0);
if(pref.getBoolean("mode",false)){
// code change ui to night
}
并在夜间模式开关上写下此代码
SharedPreferences pref = getApplicationContext().getSharedPreferences("nightMode", 0);
pref.edit().putBoolean("mode",true).apply();
同样容易
我只想知道Android中的夜间模式是否需要sqlite? 或者还有另一种方法可以在其中保存模式 当用户关闭应用程序并再次重新打开它时,它将保存模式 请帮忙
如果有其他方法请分享给我 谢谢
不,不需要sqlite。
夜间模式首选项等本地应用程序设置通常存储在 SharedPreferences
。
您可以在应用程序的 SharedPreferences 中保存一个变量,用于首选用户设置并在启动时设置主题。 查看文档以了解更多信息。SharedPreferences
请检查 Shared Preferences。这就是键值存储,正好适合这样的需求。
作为一般做法 - 创建一些 SharedPrefManager 并将所有具有共享首选项的逻辑移到那里。就像 this answer.
将此代码写在运行的第一个页面上
SharedPreferences pref = getApplicationContext().getSharedPreferences("nightMode", 0);
if(pref.getBoolean("mode",false)){
// code change ui to night
}
并在夜间模式开关上写下此代码
SharedPreferences pref = getApplicationContext().getSharedPreferences("nightMode", 0);
pref.edit().putBoolean("mode",true).apply();
同样容易