Изменить список предпочтений Сводка цвета и размера текста
У меня есть listpreference в моем приложении, я хочу настроить его, я могу установить тему для активности prefs, как показано ниже:
<activity
android:name=".Prefs"
android:label="@string/app_name"
android:theme="@style/PreferencesTheme">
предпочтительный стиль:
<?xml version="1.0" encoding="utf-8" ?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="PreferencesTheme" parent="android:Theme">
<item name="android:background">#FFDAB9</item>
<item name="android:textColor">@color/red_color</item>
<item name="android:textSize">20sp</item>
</style>
</resources>
Приведенный выше стиль изменяет фон ListPreference и размер текста заголовка ListPreference и цвет текста, НО он не меняет цвет или размер текста сводки ListPreference каким-либо образом,
я попробовал этот код, но он не работает:
<item name="android:textColorSecondary">@color/red_color</item>
любая помощь будет оценена, спасибо
3 ответа
Может быть, уже слишком поздно, чтобы ответить, но попробуйте удалить цветную линию:
<item name="android:textColor">@color/red_color</item>
И добавить это для основного, вторичного и третичного цветов
<item name="android:textColorPrimary">@color/red_color</item>
<item name="android:textColorSecondary">@color/red_color</item>
<item name="android:textColorTertiary">@color/red_color</item>
Вы можете выбрать цвет, который вы хотите, для всех тех, честно говоря, я никогда не видел третичный цвет на любой странице предпочтений, но основной для основного и большого текста, вторичный для маленького текста появляется ниже основного.
Надеюсь, поможет.
Я поместил эту строку в styles.xml, и она работает:
<item name="android:textColorSecondary">#00CC00</item>
Это отстой, потому что XML-файл говорит, что он использует textColorSecondary для итогового цвета.
Я бы порекомендовал вам скопировать и сохранить содержимое файла выше в свой собственный проект, отредактировать этот файл так, как вы этого хотите (не забудьте изменить идентификаторы), и отобразить пользовательский макет элемента предпочтений списка.
Вы можете применить пользовательский макет предпочтений в XML следующим образом:
<ListPreference
android:key="pref_key"
android:title="@string/my_list_preference"
android:layout="@layout/custom_list_preference" />