Мое приложение имеет общий основной вид деятельности.
Основная деятельность читает свою конфигурацию из arrays.xml, как следует
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="home_buttons_text">
<item>@string/Title_1</item>
</string-array>
<array name="home_buttons_icon">
<item>@drawable/google</item>
</array>
<string-array name="home_buttons_url">
<item>http://www.google.com</item>
</string-array>
<array name="themes">
<item>@style/my_theme</item>
</array>
</resources>
Таким образом, чтобы добавить новую иконку, я просто добавляю новые строки здесь.
Так что в "темах" у меня есть название темы. Как я могу загрузить и применить тему по имени?
Для иконок, которые я использовал
TypedArray mItemsIcons = resources.obtainTypedArray(R.array.home_buttons_icon);
TypedArray mThemes = resources.obtainTypedArray(R.array.themes);
.
.
.
mItemsIcons.getDrawable(position);
.
.
.
Но я понятия не имею, как получить тему.
Я проверял
int theme = mThemes.getResourceId(position);
setTheme(theme);
но это не работает.
Проверьте здесь для деталей: http://developer.android.com/guide/topics/resources/more-resources.html#TypedArray