Бьюсь уже неделю и все никак не могу решить вот такую задачу:
Предположим, что уже есть устоявшийся интерфейс некой программы для android. При этом, все layout'ы вынесены в xml. Как теперь к этому приложению прикрутить скины/шкурки/темы, изменяющие фоновые картинки и цвета?
Сразу замечу, что внутренний механизм тем не подходит по достаточно очевидной причине: нет возможности задать разные параметры разным экземплярам одного класса. Т.е. если мы в теме зададим что-то вроде
<style name="someTheme" parent="android:style/Widget.Button">
<item name="android:background">@drawable/some_drawable</item>
</style>
то заданный фон применится ко всем инстансам класса, Button, что недопустимо при текущем лэйауте.
Также, я пробовал обернуть
Resources.getDrawable(int)
Никак не помогло — ресурсы, заданные в xml, грузятся в обход этого метода.