Jfeinstein10 Темы скользящего меню

у меня возникла проблема с переключением темы выполнения API‹=10 с помощью jfeinstein10 SlidingMenu

onCreate такой

super.onCreate(savedInstanceState);
setTheme(themeA);
setContentView(R.layout.main);
SlidingMenu menu = new SlidingMenu(context);
menu.setMode(SlidingMenu.LEFT);
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
menu.setShadowWidthRes(R.dimen.shadow_width);
menu.setShadowDrawable(R.drawable.shadow);
menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
menu.setFadeDegree(0.35f);
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
menu.setMenu(R.layout.config_sliding_menu);

и onButtonClick я делаю что-то вроде этого

... themeA=newTheme ....
finish();
startActivity(new Intent(activity, activity.getClass()));

все отлично работает с API> 10 (config_sliding_menu и основные макеты после «перезагрузки» появляются с newTheme ), но с API‹=10 config_sliding_menu появляется с темой приложения по умолчанию, определенной в styles.xml, а основной макет появляется с newTheme.

Есть ли способ заставить меню SlidingMenu в API‹10 использовать newTheme?

Спасибо


person luca bellemo    schedule 18.03.2013    source источник


Ответы (1)


Использование setTheme() в вашем коде не рекомендуется, см. это.

Вместо этого объявите тему в манифесте вашего приложения.

<application
...
android:theme="@style/themeA" >
person Nachi    schedule 18.03.2013
comment
Спасибо за ответ, но мне нужно переключить время выполнения тем... все работает нормально с API›=11 - person luca bellemo; 18.03.2013
comment
Если хочешь, я могу сделать минимальный код, чтобы воспроизвести проблему: D - person luca bellemo; 18.03.2013
comment
Попробуйте вызвать setTheme() перед super.onCreate() - person Nachi; 18.03.2013
comment
Wowowowowowowowwo THHXXXXX работает отлично!!!! Можете ли вы объяснить мне, почему? это обходной путь? Я ценю это !!!! :D - person luca bellemo; 18.03.2013
comment
По сути, вам нужно настроить тему до того, как будут отрисованы какие-либо компоненты пользовательского интерфейса. Рад, что это сработало для вас! - person Nachi; 18.03.2013