Sur l'androïde TabHost layout
, lorsque l'utilisateur sélectionne un onglet, la couleur de l'onglet change temporairement. Comment puis-je désactiver ce changement de couleur, ou spécifier la couleur que l'onglet change?Comment changer la couleur utilisée pour indiquer qu'un onglet a été sélectionné sur un TabHost?
2
A
Répondre
6
MISE À JOUR
Au lieu de faire un exemple et de prendre le crédit, j'ai trouvé mon vieux tutoriel marque-page.
1
Je vous suggère de mettre en œuvre votre propre tab_indicator_selector.xml.
Exemple:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Non focused states ... -->
<!-- Focused states ... -->
<!-- Pressed -->
<item android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/tab_pressed" />
<item android:state_pressed="true" android:drawable="@drawable/tab_pressed" />
</selector>
Et c'est le sélecteur d'état tab_pressed.xml:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:top="53dp">
<shape android:shape="rectangle">
<solid android:color="@color/white" />
</shape>
</item>
<item android:top="53dp" android:bottom="1dp">
<shape android:shape="rectangle">
<solid android:color="@color/white" />
</shape>
</item>
<item android:left="2dp" android:right="2dp">
<shape android:shape="rectangle">
<gradient android:angle="90"
android:startColor="@color/black"
android:endColor="@color/white" />
<stroke android:width="2dp" android:color="@color/red" />
</shape>
</item>
</layer-list>
peuvent être atteints Les autres états en créant tab_focused.xml, tab_selected.xml et tab_unseleceted.xml et définir les combinaisons android: state_XXX et la couleur de l'arrière-plan de l'onglet est donnée par l'élément, mais vous pouvez utiliser une couleur unie sur une forme de rectangle.
Un tab_indicator personnalisé (sans image) va comme ceci:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="0dip"
android:layout_height="52dip"
android:layout_weight="1"
android:orientation="vertical"
android:background="@drawable/tab_indicator_selector"
android:layout_marginTop="2dp"
android:padding="2dp">
<TextView android:id="@+id/tab_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="11dp"
android:textStyle="bold"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
style="?android:attr/tabWidgetStyle"
/>
</RelativeLayout>
Questions connexes
- 1. Comment indiquer qu'une LI avec un lien a été pressée.
- 2. Comment changer la couleur de fond de TabHost
- 3. Comment changer l'icône, lorsqu'un onglet est sélectionné X?
- 4. Comment indiquer un droitCalloutAccessoryView a été touché pour MapKit
- 5. Comment changer de couleur dans TabHost
- 6. transformation web.config: Ajouter un commentaire XML pour indiquer quelle configuration a été utilisée
- 7. Comment changer la couleur du texte sélectionné?
- 8. Comment changer la couleur du contenu sélectionné
- 9. Méthode TabHost pour détruire un onglet?
- 10. Android TabHost changer la couleur de la barre inférieure
- 11. Comment changer la couleur du texte sélectionné?
- 12. Remplacer un fragment qui a été ajouté comme onglet d'un tabhost
- 13. Quelle notification NotifyCollectionChangedAction est utilisée pour indiquer qu'un élément a été modifié?
- 14. Comment comprendre quel UITableViewCell a été sélectionné
- 15. Comment savoir quelle annotation a été utilisée?
- 16. Récupère l'index de l'onglet sélectionné dans tabHost
- 17. Comment déterminer si un utilisateur a cliqué sur un onglet à l'intérieur d'un TabHost?
- 18. Comment savoir onglet tabulation a été pressé?
- 19. android tabhost couleur personnalisée
- 20. Comment changer mon TabHost?
- 21. Fond a TabHost sur Android
- 22. déterminer si un fichier a été sélectionné
- 23. Android - comment basculer automatiquement onglet tabhost
- 24. onglet sélectionné jquery
- 25. Comment changer la couleur du parent triable après qu'il a été déplacé
- 26. Comment changer la couleur de l'élément sélectionné dans la galerie
- 27. Comment obtenir la couleur utilisée pour un calendrier Blackberry spécifique
- 28. Comment savoir quel itinéraire a été sélectionné?
- 29. Comment changer la couleur de l'article sélectionné de JComboBox?
- 30. vb.net - changer la police de l'onglet sélectionné (en gras) ou couleur
Pourriez-vous cela un peu plus? Je ne peux pas obtenir cette méthode pour travailler autre chose que changer l'icône affichée sur l'onglet. – TwentyMiles
Ceci est un tutoriel fantastique! Merci! – TwentyMiles
Pas de problème :) Bien que cela a résolu votre problème. – LuckyLuke