Wie ändere ich den hintergrund von einem Android-tab-widget?
Meiner Klasse extends extends TabActivity
TabHost mTabHost = getTabHost();
TabHost.TabSpec tab1 =mTabHost.newTabSpec("tab1");
TabHost.TabSpec tab2 =mTabHost.newTabSpec("tab2");
tab1 .setIndicator("title tab1");
tab2 .setIndicator("title tab2");
mTabHost.addTab(tab1);mTabHost.addTab(tab2);
TabHost.setCurrentTab(0 or 1)
Kann jemand mich leiten, wie ändere ich das hintergrund Bild oder Farbe der ausgewählten Registerkarte?
InformationsquelleAutor der Frage d-man | 2010-01-20
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was ist, wenn Sie sich für einen TabHost.OnTabChanged Ereignisse und rufen mTabHost.getCurrentTabView (), um die View, dann view.setBackgroundResource()?
InformationsquelleAutor der Antwort RickNotFred
Dieser Satz Registerkarte Farben:
und wenn man es innerhalb der onTabChangedListener(), es wird die richtige Farbe für die ausgewählten Registerkarten.
InformationsquelleAutor der Antwort Blundell
Als mbaird erwähnt, die bessere Lösung ist die Verwendung hintergrund mit Selektor, so dass Sie nicht haben, um zu überprüfen
onTabChanged
und manuelle update. Die minimal-code ist hier:Wo
tab_bg
ist eine xml-drawable mit Selektor:Für die volle Registerkarte Anpassung werde ich den code hinzufügen für die änderung Register text-Stil mit benutzerdefinierten Designs. Fügen Sie diese zu
styles.xml
:Dieses Thema zu verwenden, definieren Sie es in AndroidManifest.xml:
Und jetzt haben Sie die Registerkarte widgets mit benutzerdefinierten hintergrund und benutzerdefinierte text-Stil.
InformationsquelleAutor der Antwort peter.bartos
Tut diese Ihr problem lösen? Im Grunde ruft setBackgroundDrawable auf jeder Registerkarte Ansicht mit einem Selektor?
InformationsquelleAutor der Antwort Mark B
Verwenden .setBackgroundResource und tabNselector ist eine XML - tabNselector.xml
InformationsquelleAutor der Antwort Jamal
Habe ich den "android:background' - parameter im TabWidget-element der XML-geben Sie den generischen hintergrund für alle tabs.
Dann habe ich bestanden Ansichten aufgeblasen aus einer anderen XML-Datei in die".setIndicator' - Methode.
Ich das Gefühl, dass ist ein schöner Weg, dies zu tun.
InformationsquelleAutor der Antwort