La documentación de Toolbar
dice
Si una aplicación usa una imagen de logotipo, debería considerar omitir un título y un subtítulo.
¿Cuál es la forma correcta de eliminar el título?
toolbar.setTitle("");
La documentación de Toolbar
dice
Si una aplicación usa una imagen de logotipo, debería considerar omitir un título y un subtítulo.
¿Cuál es la forma correcta de eliminar el título?
toolbar.setTitle("");
Respuestas:
getSupportActionBar().setDisplayShowTitleEnabled(false);
setSupportActionBar()
. Elegir esta respuesta porque esta parece ser la forma oficial de hacerlo de acuerdo con la referencia oficial:Set whether an activity title/subtitle should be displayed.
La forma correcta de ocultar / cambiar el título de la barra de herramientas es esta:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Esto se debe a que cuando llama setSupportActionBar(toolbar);
, getSupportActionBar()
será responsable de manejar todo a la Barra de acciones, no al objeto de la barra de herramientas.
Ver aquí
Prueba esto...
@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 razón de mi respuesta sobre esto es porque la respuesta más votada no resolvió mi problema. He resuelto este problema haciendo esto.
<activity android:name="NAME OF YOUR ACTIVITY"
android:label="" />
Espero que esto ayude a otros también.
<intent-filter>
en esa actividad para permitir a los usuarios abrir su aplicación haciendo clic en una URL (por ejemplo), el cuadro de diálogo de desambiguación no tendrá ningún título.
Otra forma de eliminar el título de tu Toolbar
es null
hacerlo así:
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
toolbar.setTitle(null);
esta
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 está utilizando la barra Google, pruebe el siguiente código:
toolbar.setTitle("");
Puede usar cualquiera de los siguientes, ya que ambos funcionan de la misma manera:
getSupportActionBar().setDisplayShowTitleEnabled(false);
y
getSupportActionBar().setTitle(null);
Dónde utilizar:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
O:
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);
toma nota de esta línea getSupportActionBar().setDisplayShowTitleEnabled(false);
No sé si esta es la forma correcta o no, pero he cambiado mi estilo de esta manera.
<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 usa la barra de herramientas predeterminada, puede agregar esta línea de código
Objects.requireNonNull(getSupportActionBar()).setDisplayShowTitleEnabled(false);
Es obvio, pero la App Theme
selección en el diseño es solo para mostrar un borrador durante la edición de diseño, no está relacionada con la aplicación real que se ve en el teléfono celular. En mi caso, no hay una barra de título en el diseño, pero la barra de título siempre estaba en el teléfono celular.
Estoy empezando con la programación de Android y lucho por descubrir la solución correcta.
Simplemente cambiar el archivo de manifiesto ( AndroidManifest.xml
) no es suficiente porque el estilo que se debe predefinir es styles.xml
. También es inútil cambiar los archivos de diseño.
Toda solución propuesta en Java
o Kotlin
ha fallado para mí. Algunos de ellos bloquean la aplicación. Y si uno (como yo) nunca tiene la intención de usar la barra de título en la aplicación, la solución estática es más limpia.
Para mí, la única solución que funciona en 2019 (Android Studio 3.4.1) es:
en styles.xml
(bajo app / res / values) agregue las líneas:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
Después en AndroidManifest.xml
(bajo aplicación / manifiestos)
Reemplazar
android:theme="@style/AppTheme">
por
android:theme="@style/AppTheme.NoActionBar">
Nadie mencionó:
@Override
protected void onCreate(Bundle savedInstanceState) {
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
}
toolbar.setTitle(null);
// elimina el título
Toolbar toolbar = findViewById(R.id.myToolbar);
toolbar.setTitle("");