La documentation de Toolbar
dit
Si une application utilise une image de logo, elle doit fortement envisager d'omettre un titre et un sous-titre.
Quelle est la bonne façon de supprimer le titre?
toolbar.setTitle("");
La documentation de Toolbar
dit
Si une application utilise une image de logo, elle doit fortement envisager d'omettre un titre et un sous-titre.
Quelle est la bonne façon de supprimer le titre?
toolbar.setTitle("");
Réponses:
getSupportActionBar().setDisplayShowTitleEnabled(false);
setSupportActionBar()
. Choisir cette réponse car cela semble être la manière officielle de le faire selon la référence officielle:Set whether an activity title/subtitle should be displayed.
La bonne façon de masquer / modifier le titre de la barre d'outils est la suivante:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
En effet, lorsque vous appelez setSupportActionBar(toolbar);
, le getSupportActionBar()
sera responsable de tout gérer dans la barre d'action, pas dans l'objet de la barre d'outils.
Voir ici
Essaye ça...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_landing_page);
.....
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_landing_page);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
.....
}
La raison de ma réponse à ce sujet est que la réponse la plus votée elle-même n'a pas réussi à résoudre mon problème. J'ai résolu ce problème en faisant cela.
<activity android:name="NAME OF YOUR ACTIVITY"
android:label="" />
J'espère que cela aidera les autres aussi.
<intent-filter>
sur cette activité pour permettre aux utilisateurs d'ouvrir votre application en cliquant sur une URL (par exemple), la boîte de dialogue d'homonymie n'aura pas de titre!
Une autre façon de supprimer le titre de votre Toolbar
est de null
le sortir comme ceci:
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
toolbar.setTitle(null);
ce
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
//toolbar.setNavigationIcon(R.drawable.ic_toolbar);
toolbar.setTitle("");
toolbar.setSubtitle("");
//toolbar.setLogo(R.drawable.ic_toolbar);
Si vous utilisez la barre d'outils, essayez le code ci-dessous:
toolbar.setTitle("");
Vous pouvez utiliser l' un des deux ci - dessous que fonctionne même:
getSupportActionBar().setDisplayShowTitleEnabled(false);
et
getSupportActionBar().setTitle(null);
Où utiliser:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
Ou :
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Toolbar actionBar = (Toolbar)findViewById(R.id.toolbar);
actionBar.addView(view);
setSupportActionBar(actionBar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
prenez note de cette ligne getSupportActionBar().setDisplayShowTitleEnabled(false);
Je ne sais pas si c'est la bonne façon ou non, mais j'ai changé mon style comme ça.
<style name="NoActionBarStyle" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
</style>
si vous utilisez la barre d'outils par défaut, vous pouvez ajouter cette ligne de code
Objects.requireNonNull(getSupportActionBar()).setDisplayShowTitleEnabled(false);
C'est évident, mais la App Theme
sélection dans la conception est juste pour afficher un brouillon lors de l'édition de la mise en page, n'est pas liée à la recherche d'une application réelle dans un téléphone portable. Dans mon cas, il n'y a pas de barre de titre dans la conception mais la barre de titre était toujours dans le téléphone portable.
Je commence par la programmation Android et je me bats pour découvrir une bonne solution.
Il AndroidManifest.xml
ne suffit pas de modifier le fichier manifeste ( ) car le style doit être prédéfini styles.xml
. Il est également inutile de modifier les fichiers de mise en page.
Toute solution proposée Java
ou Kotlin
a échoué pour moi. Certains d'entre eux plantent l'application. Et si l'on n'a jamais (comme moi) l'intention d'utiliser la barre de titre dans l'application, la solution statique est plus propre.
Pour moi, la seule solution qui fonctionne en 2019 (Android Studio 3.4.1) est:
in styles.xml
(sous app / res / values) ajoutez les lignes:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
Après dans AndroidManifest.xml
(sous app / manifestes)
Remplacer
android:theme="@style/AppTheme">
par
android:theme="@style/AppTheme.NoActionBar">
Personne n'a mentionné:
@Override
protected void onCreate(Bundle savedInstanceState) {
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
}
toolbar.setTitle(null);
// supprimer le titre
Toolbar toolbar = findViewById(R.id.myToolbar);
toolbar.setTitle("");