ronny130286
Fortgeschrittenes Mitglied
- 24
Hallo
ich möchte meine App so gestalten das ich über eine PreferenceActivity eine Auswahl treffen kann ob meine App im Holo (Dunkler Style) oder im Holo Light (heller Style) erscheint.
Dazu habe ich mir eine PreferenceActivity angelegt und fange mir die Veränderung des Switchschalter ab, speichere die Auswahl dann und rufe ein recreate() auf damit ich die Veränderung gleich sehen.
Problem dabei ist das mir die App dann den Holo (dunkel) gar nicht richtig darstellt, ich kann da sozu sagen keine schrift mehr erkennen, schalte ich wieder zurück auf hell sieht alles wieder normal aus.
Hier mal mein Code:
EinstellungActivity
Style.xml
kann mir jemand Helfen an was das liegt?
ich möchte meine App so gestalten das ich über eine PreferenceActivity eine Auswahl treffen kann ob meine App im Holo (Dunkler Style) oder im Holo Light (heller Style) erscheint.
Dazu habe ich mir eine PreferenceActivity angelegt und fange mir die Veränderung des Switchschalter ab, speichere die Auswahl dann und rufe ein recreate() auf damit ich die Veränderung gleich sehen.
Problem dabei ist das mir die App dann den Holo (dunkel) gar nicht richtig darstellt, ich kann da sozu sagen keine schrift mehr erkennen, schalte ich wieder zurück auf hell sieht alles wieder normal aus.
Hier mal mein Code:
EinstellungActivity
Code:
public class EinstellungActivity extends PreferenceActivity implements OnPreferenceChangeListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Automatisch generierter Methodenstub
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
if(prefs.getBoolean("prefTheme", false)){
//Heller Theme
setTheme(R.style.AppTheme);
}
else{
//Dunkler Theme
setTheme(R.style.AppTheme2);
}
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.einstellung);
SwitchPreference themepref = SwitchPreference)findPreference("prefTheme");
themepref.setOnPreferenceChangeListener(this);
}
@Override
public boolean onPreferenceChange(Preference p, Object newValue) {
if(p.getKey().equals("prefTheme")){
recreate();
}
return true;
// TODO Automatisch generierter Methodenstub
}
}
Style.xml
Code:
<resources>
<style name="AppBaseTheme" parent="android:Theme.Light">
</style>
<style name="AppBaseTheme2" parent="android:Theme.Holo">
</style>
<style name="AppTheme" parent="AppBaseTheme">
</style>
<style name="AppTheme2" parent="AppBaseTheme2">
</style>
</resources>
kann mir jemand Helfen an was das liegt?