2013-07-17 22 views
9

mam listpreference w moim app, chcę go dostosować, mogę ustawić motyw do działania prefs jak poniżej:Zmień listpreference kolorze Streszczenie tekstu i rozmiaru

<activity 
    android:name=".Prefs" 
    android:label="@string/app_name" 
    android:theme="@style/PreferencesTheme"> 

preferencji styl:

<?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> 

Powyższy styl powoduje zmianę tła ListPreference oraz rozmiaru tekstu tytułu ListPreference i koloru tekstu, ale nie zmienia koloru lub rozmiaru tekstu podsumowania ListPreference w żaden sposób, aby to zrobić,

Próbowałem ten kod, ale to nie działa:

<item name="android:textColorSecondary">@color/red_color</item> 

Każda pomoc będzie mile widziane, dzięki

Odpowiedz

2

That sucks because the xml file says it uses textColorSecondary for the summary color.

To, co chciałbym polecić, to skopiować i zapisać zawartość powyższego pliku do własnego projektu, edytować ten plik tak, aby wyglądał tak, jak chcesz (Pamiętaj, aby nie zmieniać żadnych identyfikatorów) i wyświetlać niestandardową listę układ elementów preferencji.

Można zastosować układ preferencji użytkownika w xml tak:

<ListPreference 
    android:key="pref_key" 
    android:title="@string/my_list_preference" 
    android:layout="@layout/custom_list_preference" /> 
+0

i skopiować link i stworzyć układ i obok niego na niej odnoszą odniesienie do niej, jak to wyjaśnić, ale jej nie działa – androidqq6

2

umieścić tę linię do styles.xml i to działa:

<item name="android:textColorSecondary">#00CC00</item> 
+1

próbuję to nie działa, dzięki – androidqq6

9

Może to zbyt późno, by odpowiedzieć, ale spróbuj usunąć linię koloru:

<item name="android:textColor">@color/red_color</item> 

I dodać th jest które są dla pierwszo-, drugo- i trzeciorzędowych kolorach

<item name="android:textColorPrimary">@color/red_color</item> 
<item name="android:textColorSecondary">@color/red_color</item> 
<item name="android:textColorTertiary">@color/red_color</item> 

Można wybrać kolor, który ma do tych wszystkich, szczerze mówiąc, nigdy nie widziałem trzeciorzędowej kolor na dowolnej stronie preferencji, ale głównym jest głównym i duży tekst, drugorzędny dla małego tekstu pojawia się poniżej podstawowego.

Mam nadzieję, że to pomaga.

+0

Podsumowanie tekst zastosowania „android: textColorTertiary” lub „android: textColorSecondary” w zależności od preferencji. – Codeversed