2013-07-17 11 views
9

Ich habe listpreference in meiner app, ich will es anpassen, ich als Gebrüll Thema Prefs Aktivität einstellen:ändern listpreference Zusammenfassung Textfarbe und -größe

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

Vorliebe Stil:

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

Der obige Stil ändert die ListPreference-Hintergrund- und ListPreference-Titeltextgröße und Textfarbe ABER Es ändert jedoch nicht die ListPreference-Zusammenfassungstextfarbe oder -größe, wie dies möglich ist,

Ich habe versucht, diesen Code, aber es funktioniert nicht:

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

jede mögliche Hilfe geschätzt wird, dank

Antwort

2

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

Ich würde empfehlen, kopieren und speichern Sie den Inhalt der Datei oben in Ihr eigenes Projekt, bearbeiten Sie diese Datei so, wie Sie es wollen (Denken Sie daran, keine Ids zu ändern), und zeigen Sie eine benutzerdefinierte Liste Präferenzelement Layout.

Sie können eine benutzerdefinierte Einstellung Layout in XML-Anwendung wie folgt:

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

i kopieren Sie den Link und das Layout erstellen und an ihm vorbei auf sie der Verweis darauf verweisen, wie Sie erklären, aber es ist nicht arbeiten – androidqq6

2

habe ich diese Linie in styles.xml und es funktioniert:

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

ich versuche, es nicht funktioniert, dank – androidqq6

9

Vielleicht zu beantworten, es ist zu spät, aber versuchen zu entfernen Ihre Linie der Farbe:

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

Und fügen th ist, das ist für die Primär-, Sekundär- und Tertiärfarben

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

Sie die Farbe wählen, können Sie an alle, die wollen, ehrlich gesagt, ich nie die Tertiärfarbe in jeder Einstellungsseite gesehen, aber die primäre ist für die Haupt- und großer Text, der sekundäre für den kleinen Text erscheint unterhalb des primären.

Ich hoffe, es hilft.

+0

Zusammenfassung Text verwendet ‚android: textColorTertiary‘ oder ‚android: textColorSecondary‘ abhängig von der Präferenz. – Codeversed

Verwandte Themen