Чтобы установить тему динамически во время выполнения, вызовите setTheme () в методе onCreate () вашей активности перед вызовом setContentView ().Чтобы изменить тему, вам просто нужно перезапустить свою деятельность.
Вот хороший учебник о том, как динамически применять темы.
и this один тоже.