Ich versuche, eine Anwendung mit 2 Thema zu machen, kann ich dies nur für eine Aktivität tun und andere Aktivitäten sind nicht mehr betroffen, Wie ändere ich das Thema für alle Seiten gelten?mit 2 Thema für Android-App
Codes für Themen:
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">#795548</item>
<item name="colorPrimaryDark">#5d4037</item>
<item name="colorAccent">#e6300b</item>
<item name="android:textColorPrimary">#ffffff</item>
<item name="android:navigationBarColor">#e4ccc7</item>
</style>
<style name="apptheme2" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#8ff2f2</item>
<item name="colorPrimaryDark">#044949</item>
<item name="colorAccent">#813ba4</item>
<item name="android:textColorPrimary">#000000</item>
<item name="android:navigationBarColor">#735852</item>
Java-Codes für eine Aktivität:
Button btndark;
Button btnlight;
@Override
protected void onCreate(Bundle savedInstanceState) {
final SharedPreferences shared = getSharedPreferences("prefers", 0);
final Boolean theme = shared.getBoolean("theme", true);
if (!theme) {
setTheme(R.style.AppTheme);
} else {
setTheme(R.style.apptheme2);
}
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btndark = (Button) findViewById(R.id.btn1);
btnlight = (Button) findViewById(R.id.btn2);
btndark.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences.Editor editor = shared.edit();
editor.putBoolean("theme", false);
editor.commit();
recreate();
}
});
btnlight.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences.Editor editor = shared.edit();
editor.putBoolean("theme", true);
editor.commit();
recreate();
}
});
Verwenden Sie das Manifest zum Festlegen von Themen –