109 votes

Comment supprimer le texte du titre de la barre d'action Android ?

Je consulte le Holo.Light et je n'arrive pas à trouver le style magique à remplacer pour me débarrasser du texte de titre qui apparaît brièvement au premier lancement de mon application.

Comment puis-je faire cela ?

220voto

Filippo Mazza Points 1029

Essayez :

 getActionBar().setDisplayShowTitleEnabled(false);

Pour le v.7 :

 getSupportActionBar().setDisplayShowTitleEnabled(false);

23 votes

Vous verrez toujours le titre pendant que la barre d'action se charge, ce qui n'est pas ce que vous voulez. la bonne solution est ce que m3n0R a suggéré.

12 votes

Il faut utiliser getSupportActionBar().setDisplayShowTitleEnabled(false) ; pour la v7 . sinon cela produira une exécution avec un pointeur nul

10 votes

@numansalati Qui est m3n0R ? J'ai cherché sur la page et je n'ai rien trouvé.

96voto

m3n0R Points 2333

Je pense que c'est la bonne réponse :

<style name="AppTheme" parent="Theme.Sherlock.Light.DarkActionBar">
    <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
    <item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
</style>

<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
    <item name="android:displayOptions">showHome|useLogo</item>
    <item name="displayOptions">showHome|useLogo</item>
</style>

0 votes

Qu'en est-il d'Android 4 ? Je n'utilise pas ActionBarSherlock donc il n'y a pas de ressource nommée Widget.Sherlock.Light.ActionBar.Solid.Inverse . Quel parent dois-je utiliser ?

0 votes

Thème Holo. Par défaut, il existe 3 thèmes holo que vous pouvez étendre.

0 votes

Cela fonctionne pour cacher le titre lors du premier lancement. Dans une autre activité, l'appel à setTitle ne fonctionne pas. Existe-t-il un moyen d'intervertir les styles des barres d'action au moment de l'exécution ?

63voto

djangonoob Points 524

Je suis très novice en matière d'Android, alors corrigez-moi si je me trompe, mais je pense que si vous décidez d'utiliser des onglets de navigation sur la barre d'action, ils semblent ne pas être complètement alignés à gauche parce que la couleur du texte du titre est seulement transparente et n'a pas disparu.

<style name="CustomActionBarStyle" parent="@android:style/Widget.Holo.ActionBar">
     <item name="android:displayOptions">useLogo|showHome</item>
</style>

a fonctionné pour moi.

0 votes

Oui, vous avez tort, pas d'onglets dans la question et pas de lumière holo dans votre réponse.

0 votes

Alors que j'essaie ceci, j'obtiens cette erreur, @Android:style/Widget.Holo.ActionBar requires API level 11 (current min is 10).

0 votes

Si je veux assigner ce style à la barre d'action d'une activité spécifique et non à toutes les activités de mon application. Comment faire ? Où dois-je mettre la ligne 'Android:displayOptions' ? dans Menu.xml ? Dans AndroidMenifest.xml ?

44voto

Christopher Perry Points 7972

Je l'ai. Vous devez passer outre

android:actionBarStyle

puis, dans votre style personnalisé, vous devez remplacer

android:titleTextStyle

En voici un exemple.

Dans mon themes.xml :

<style name="CustomActionBar" parent="android:style/Theme.Holo.Light">
        <item name="android:actionBarStyle">@style/CustomActionBarStyle</item>
</style>

Et dans mon fichier styles.xml :

<style name="CustomActionBarStyle" parent="android:style/Widget.Holo.ActionBar">
        <item name="android:titleTextStyle">@style/NoTitleText</item>
        <item name="android:subtitleTextStyle">@style/NoTitleText</item>
</style>

<style name="NoTitleText">
        <item name="android:textSize">0sp</item>
        <item name="android:textColor">#00000000</item>
</style>

Je ne sais pas exactement pourquoi le fait de fixer la taille du texte à zéro n'a pas eu d'effet (cela a réduit le texte, mais ne l'a pas fait disparaître), mais le fait de fixer la couleur du texte à transparent fonctionne.

3 votes

Oui, cela a aidé. Une idée de la raison pour laquelle android:visibility=gone n'a pas d'effet ? Ou mieux encore, pourquoi les setDisplayShowTitleEnabled afficher le texte du titre pendant le chargement de la barre ?

7 votes

Utiliser <item name="Android:displayOptions">useLogo|showHome</item> au lieu de fixer la taille à 0

24voto

easycheese Points 1523

Dans votre manifeste

<activity android:name=".ActivityHere"
     android:label="">

33 votes

Cela fonctionne, mais votre application n'apparaîtra plus dans le sélecteur "Applications récemment utilisées".

1 votes

Cette application n'a pas de nom sur les applications du téléphone / l'écran principal

0 votes

Bonjour @RupertBates, @Nimitack, il semble que cela fonctionne si vous attribuez le nom de votre application dans le fichier application c'est-à-dire, <application android:label="your_app_name">...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X