From 290b17d0299a70590342ed8c3dc852855e607dc2 Mon Sep 17 00:00:00 2001 From: Sourav Patra Date: Mon, 16 Nov 2020 10:32:50 -0500 Subject: [PATCH] SwitchPreference Working, but not updating --- .../buildOutputCleanup.lock | Bin 17 -> 17 bytes .../josh/trackcovid19v2/SettingsActivity.java | 16 +++++++++++++++ .../main/res/menu/activity_main_drawer.xml | 4 ++-- app/src/main/res/values/strings.xml | 2 +- app/src/main/res/xml/root_preferences.xml | 19 +++++++----------- 5 files changed, 26 insertions(+), 15 deletions(-) diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 09f85ff2b89fdd3ea361042e5bd52a6b1a2f5b73..e7497f9cad5365ccc4c8db4fe899e68f43f51647 100755 GIT binary patch literal 17 VcmZR+ab2fDE%nW61~5?e1OPcM1nmF- literal 17 VcmZR+ab2fDE%nW61~5>v0{}T81mOSx diff --git a/app/src/main/java/com/josh/trackcovid19v2/SettingsActivity.java b/app/src/main/java/com/josh/trackcovid19v2/SettingsActivity.java index 5fa24de..d32719e 100755 --- a/app/src/main/java/com/josh/trackcovid19v2/SettingsActivity.java +++ b/app/src/main/java/com/josh/trackcovid19v2/SettingsActivity.java @@ -4,7 +4,10 @@ import android.os.Bundle; import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.app.AppCompatDelegate; +import androidx.preference.Preference; import androidx.preference.PreferenceFragmentCompat; +import androidx.preference.SwitchPreference; public class SettingsActivity extends AppCompatActivity { @@ -26,6 +29,19 @@ public class SettingsActivity extends AppCompatActivity { @Override public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { setPreferencesFromResource(R.xml.root_preferences, rootKey); + SwitchPreference darkModeSwitch = findPreference("darkMode"); + assert darkModeSwitch != null; + darkModeSwitch.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(Preference preference, Object newValue) { + if (AppCompatDelegate.getDefaultNightMode() == AppCompatDelegate.MODE_NIGHT_YES) { + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); + } else { + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); + } + return false; + } + }); } } } diff --git a/app/src/main/res/menu/activity_main_drawer.xml b/app/src/main/res/menu/activity_main_drawer.xml index 6049f7a..69faf21 100755 --- a/app/src/main/res/menu/activity_main_drawer.xml +++ b/app/src/main/res/menu/activity_main_drawer.xml @@ -27,12 +27,12 @@ - + Settings - Messages + Preferences Sync diff --git a/app/src/main/res/xml/root_preferences.xml b/app/src/main/res/xml/root_preferences.xml index 1d91e49..ec16815 100755 --- a/app/src/main/res/xml/root_preferences.xml +++ b/app/src/main/res/xml/root_preferences.xml @@ -1,19 +1,14 @@ - + - - + + +