2015-05-08 3 views
0

Я хочу, чтобы в моем приложении была тема режима ночного режима/дневного режима. В настоящее время у меня есть все экраны с дневным режимом.Как отключить стили во время выполнения

У меня есть 80+ очень сложных файлов макета, 20 стилей (7 видов текста, прядильщики и т. Д.).

Вариант 1: У вас есть еще один набор макетов с префиксом _night, для ссылок на стили _night будет много работы.

Вариант 2: переключение из цветов в runtime..too много работы

Есть простой способ определить другую тему?

ответ

0

Вы можете задать тему в своем Activity до того, как будет вызываться setContentView. Что-то вроде этого.

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setTheme(your theme here); 
    setContentView(...) 
} 

Если пользователь меняет тему внутри Activity то вы должны перезапустить эту Activity, чтобы увидеть изменения.

http://developer.android.com/reference/android/view/ContextThemeWrapper.html#setTheme(int)

+0

А как вы определяете 7 видов стилей TextView, в 2-х разных темах? – Tamas

Смежные вопросы