2017-12-12 2 views
-3

Für API> = 21 erhalten wir die colorPrimary, colorAccent Werte mit "? Attr/colorPrimary" oder "? ColorPrimary". Aber es funktioniert nicht auf Pre-Lollipop-Geräten. Es zeigt einen Fehler wie unten. Danke im Voraus.Ich möchte ein dynamisches Thema festlegen, so wie das Thema der Anwendung colorPrimary, colorAccent Wert in Pre-Lollipop-Geräte für Android erhalten?

Verursacht durch: java.lang.UnsupportedOperationException: umwandeln kann nicht zu Farbe: type = 0x2 bei android.content.res.TypedArray.getColor (TypedArray.java:327) bei android.graphics .drawable.GradientDrawable.inflate (GradientDrawable.java:970) bei android.graphics.drawable.Drawable.createFromXmlInner (Drawable.java:937) bei android.graphics.drawable.Drawable.createFromXml (Drawable.java:877) bei android.content.res.Resources.loadDrawable (Resources.java:2148) bei android.content.res.TypedArray.getDrawable (TypedArray.java:602) bei android.view.View. (View.java:3579) bei android.widget.TextView. (TextView.java:642) bei android.widget.Button. (Button.java:107) bei android.support.v7.widget.AppCompatButton. (AppCompatButton.java:71) bei android.support.v7.widget.AppCompatButton. (AppCompatButton.java : 67) unter android.support.v7.app.AppCompatViewInFlater.createView (AppCompatViewInFlater.java:109) um android.support.v7. app.AppCompatDelegateImplV9.createView (AppCompatDelegateImplV9.java:1024) bei android.support.v7.app.AppCompatDelegateImplV9.onCreateView (AppCompatDelegateImplV9.java:1081) bei android.view.LayoutInflater.createViewFromTag (LayoutInflater.java:684) bei android.view.LayoutInflater.rInflate (LayoutInflater.java:755) bei android.view.LayoutInflater.rInflate (LayoutInflater.java:758) bei android.view.LayoutInflater.inflate (LayoutInflater.java:492)

Antwort

0

colorPrimary wurde hinzugefügt w ith das Material Design Update in Android 5.0. Es ist nicht auf Geräten mit Android < 5.0 vorhanden.

+0

Wie kann ich dann auf ein dynamisches Thema basierend auf einem Klick auf Pre-Lollipo-Geräte wechseln? –

0

Wie @Iulian Popescu sagte colorPrimary oben Lutscher Version

so Statt vorgeschlagen? "Attr/colorPrimary" oder "? ColorPrimary" Verwendung von color.xml wie unter

android:background="@color/colorPrimary" 

oder auf Bezugs Farbeigenschaft direkt "#RGB" Wert wie

android:background="#000" 
0

Sie können t verwenden Die Farbe, die in der Datei colors.xml definiert ist: @color/colorPrimary

Verwandte Themen