2016-07-20 14 views
1

Ich benutze Leanback BrowseFragment und muss in der Lage sein, Hintergrundfarbe des Header-Elements, wenn ausgewählt. Gibt es dazu direkte Methoden/XML-Attribute? Ich habe in BrowseFragment und Lehnseite themes.xml gesucht.Hintergrundfarbe des ausgewählten Hauptmenü-Elements von BrowseFragment

Referenz: https://developer.android.com/reference/android/support/v17/leanback/app/BrowseFragment.html https://android.googlesource.com/platform/frameworks/support/+/master/v17/leanback/res/values/themes.xml

+0

Sie einen Hinweis hier finden kann: http://stackoverflow.com/questions/33774150/ android-tv-changed-text-color-und-font-of-browse-fragment-rows-header –

+0

Kann ich auch den gleichen Fall wie Sie [http://stackoverflow.com/questions/43500898/how-to -rounder-Ecke-auf-Kinder-von-Zeile-verwenden-lehnen-listrowpresenter] (http://stackoverflow.com/questions/43500898/how-to-rounder-corner-on-children-of-row-use- leanback-listrowpresenter) –

Antwort

0

In meinem Fall habe ich benutzerdefinierte Header Elemente mit Symbolen. Sie können Details in Tutorial this sehen. Für Textview von meinem Layout definierte ich xml Datei im Verzeichnis color, etwa so:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:color="@color/accent_color" android:state_selected="true"/> 
<item android:color="@color/white"/> 
</selector> 

und die gleichen XML-Dateien (aber mit android:drawable Attributen) in den direcroty drawable.

<?xml version="1.0" encoding="utf-8"?> 
    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/icon_focused" 
    android:state_selected="true"/> 
    <item android:drawable="@drawable/icon"/> 
</selector> 

gesetzt Dann einfach android:textColor="@color/your_new_xml_file" für TextView und Ihre ziehbar-Dateien für Ihre Header ImageView verwenden.

Wenn Sie ändern müssen View Hintergrund, nicht nur Header-Symbol und Textfarbe, setzen Sie xml Datei mit definierten Farben als View Hintergrund.

OnSelectLevelChanged() -Methode in meinem Moderator Klasse leer ist (ohne dass dies, wie in Tutorial oben):

holder.view.setAlpha(mUnselectedAlpha + holder.getSelectLevel() * 
       (1.0f - mUnselectedAlpha));