2016-08-22 8 views
7

Was umfasst jeder Text in einer App?TextColor vs TextColorPrimary vs TextColorSecondary

Genauer gesagt, was würde sich ändern jedes dieser in einem Thema in meiner App ändern? Ich möchte, dass die Texte meiner Buttons eine andere Farbe haben als meine Textansichten. ist eine primäre und die andere sekundäre?

Alle Informationen zu diesen Bedingungen sind willkommen!

Antwort

10

TextColor ist nur das XML-Attribut, um eine Farbe für den Text einer beliebigen Ansicht festzulegen.

TextColorPrimary ist die Standardtextfarbe für aktivierte Schaltflächen und große Textansichten.

TextColorSecondary ist die Standardtextfarbe für mittlere und kleine Textansichten.

Ignorieren Sie dies, für was Sie tun möchten, gibt es einen besseren Weg. Sie möchten Ihre style.xml so bearbeiten, dass das Standardthema AppTheme (oder was auch immer Sie als Theme in Ihrem Manifest deklariert haben) die erforderlichen XML-Attribute zum Anpassen Ihrer Textfarben enthält.

Der resultierende AppTheme-Stil wird so aussehen, wenn Sie fertig sind.

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
    <item name="android:textColor">#hexColorForTextViews</item> 
    <item name="android:buttonStyle">@style/myDefaultButton</item> 
</style> 

textColor stellt die Standardfarbe für alle Ihre Textansichten ein. buttonStyle referenziert einen benutzerdefinierten Stil für alle Schaltflächen. Fügen Sie dieses Style-Tag zu Ihrer styles.xml-Datei hinzu, um das zu arbeiten.

<style name="myDefaultButton"> 
    <item name="android:textColor">#hexColorForButtons</item> 
    <!-- other stuff you want your buttons to inherit by default --> 
</style> 
Verwandte Themen