public
class
MainActivity
extends
AppCompatActivity {
private
Button btnToggleDark;
@SuppressLint
(
"SetTextI18n"
)
@Override
protected
void
onCreate(
Bundle savedInstanceState)
{
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnToggleDark
= findViewById(R.id.btnToggleDark);
SharedPreferences sharedPreferences
= getSharedPreferences(
"sharedPrefs"
, MODE_PRIVATE);
final
SharedPreferences.Editor editor
= sharedPreferences.edit();
final
boolean
isDarkModeOn
= sharedPreferences
.getBoolean(
"isDarkModeOn"
,
false
);
if
(isDarkModeOn) {
AppCompatDelegate
.setDefaultNightMode(
AppCompatDelegate
.MODE_NIGHT_YES);
btnToggleDark.setText(
"Disable Dark Mode"
);
}
else
{
AppCompatDelegate
.setDefaultNightMode(
AppCompatDelegate
.MODE_NIGHT_NO);
btnToggleDark
.setText(
"Enable Dark Mode"
);
}
btnToggleDark.setOnClickListener(
new
View.OnClickListener() {
@Override
public
void
onClick(View view)
{
if
(isDarkModeOn) {
AppCompatDelegate
.setDefaultNightMode(
AppCompatDelegate
.MODE_NIGHT_NO);
editor.putBoolean(
"isDarkModeOn"
,
false
);
editor.apply();
btnToggleDark.setText(
"Enable Dark Mode"
);
}
else
{
AppCompatDelegate
.setDefaultNightMode(
AppCompatDelegate
.MODE_NIGHT_YES);
editor.putBoolean(
"isDarkModeOn"
,
true
);
editor.apply();
btnToggleDark.setText(
"Disable Dark Mode"
);
}
}
});
}
}