6
Mam dwa motywy w mojej aplikacji. Mam niebieski motyw z niebieskim tle:windowBackground nie zmienia się z motywem
<style name="Theme.BlueTheme" parent="Theme.Sherlock">
<item name="android:panelBackground">@drawable/menu_hardkey_panel_actionbar</item>
<item name="android:buttonStyle">@style/ButtonAppTheme</item>
<item name="android:windowBackground">@drawable/bground_blue</item>
<item name="android:spinnerItemStyle">@style/SpinnerItem</item>
<item name="android:editTextStyle">@style/Widget.EditText.White</item>
<item name="android:spinnerItemStyle">@style/SpinnerItem</item>
<item name="android:textViewStyle">@style/whitestyle</item>
</style>
Mam też biały motyw z białym tle:
<style name="Theme.AppTheme" parent="Theme.Sherlock.Light.DarkActionBar">
<item name="android:panelBackground">@drawable/menu_hardkey_panel_actionbar</item>
<item name="android:buttonStyle">@style/ButtonAppTheme</item>
<item name="android:windowBackground">@drawable/bground_white</item>
<item name="android:spinnerItemStyle">@style/SpinnerItem</item>
<item name="android:editTextStyle">@style/Widget.EditText.Black</item>
</style>
Wszystko działa poprawnie z wyjątkiem tło jest zawsze biały jeden kiedy ustawić niebieski motyw w kodzie.
Moja aplikacja motyw jest ustawiony na białym motywem w moim manifeście:
<application
android:allowBackup="true"
android:icon="@drawable/launcher_icon"
android:label="@string/app_name"
android:theme="@style/Theme.AppTheme" >
I wtedy ustawić niebieski motyw w mojej klasie Activitybase w onCreate:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setDisplayHomeAsUpEnabled(true);
}
setTheme(R.style.Theme_BlueTheme);
}