Cuando realizamos una aplicación podemos indicar cual es el título que queremos que tenga cada una de las activities en la barra superior. Muchas veces este título es fijo y no debe modificarse nunca. Títulos como Inicio, Configuración, Ajustes, u otros similares. Estos nunca se modifican, así que indicándolos en la propia activity en el AndroidManifest ya es suficiente.
Pero en otros casos nos interesa que este título sea dinámico. ¿Que queremos decir con dinámico? Pues queremos decir que variará en función del contenido, o quizás en función del día. Para poder modificar este título debemos programar esta funcionalidad.
Para ello podemos utilizar el siguiente código en el onCreate de la activity en cuestión:
ActionBar actionBar = getSupportActionBar();
if(actionBar != null)
{
actionBar.setTitle("Nuestro título");
}
Lo primero que tenemos que hacer es recoger nuestra ActionBar, que es dónde se pinta el título y nos la guardamos en una variable.
El siguiente paso es comprobar que el objeto no sea nulo, ya sea porque ocultamos la ActionBar o bien por algún otro motivo.
El siguiente paso es ponerle el valor que queremos con la función setTitle. Dentro le pondremos el valor que queramos, que puede ser una cadena de texto cualquier, en este caso fija, pero también puede ser variable en función de algún valor que estemos mostrando.
Por ejemplo, si tenemos un listado de productos, y seleccionamos un y esta acción nos lleva a una segunda actividad, en esta segunda actividad podemos modificar el título de la activity y ponerle por ejemplo el nombre del producto :
actionBar.setTitle(producto.getNombre());
donde producto seria nuestro objeto del tipo que estamos mostrando y getNombre la función para recoger el nombre.