android - quitar - ¿Cómo podemos ocultar la barra de título mientras usamos la barra de acción?
ocultar iconos de la barra de estado android (10)
Estoy usando ActionBarSherlock y trato de ocultar la barra de título de mi aplicación, pero cada vez que hago eso, obtengo una NullPointerException
al acceder a la ActionBar
¿Cómo ActionBar
/ ActionBar
la barra de título? Tenga en cuenta que no me estoy refiriendo al título de la barra de acción. Me refiero a la barra de título sobre la barra de acción. Estoy ejecutando mi aplicación en un dispositivo Android 2.3.
A continuación está mi código: (Mi clase extiende SherlockFragmentActivity
).
super.onCreate(savedInstanceState);
setTheme(R.style.Theme_Sherlock);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
ActionBar actionbar = getSupportActionBar();
actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); //I get the NullPointerException here.
//...
setContentView(R.layout.tab_navigation);
Encontré la solución en este caso. Si declara su tema en AndroidManifest.xml
, la barra de título desaparecerá por sí sola. Aunque, no sé por qué solo funciona cuando se declara en AndroidManifest.xml
y no en el código.
El motivo de la ActionBar
NullPointerException es que ActionBar
es sinónimo de TitleBar
en versiones superiores (ICS y más recientes). Al usar la biblioteca de compatibilidad y ActionBarSherlock
, ocultar la TitleBar
también significará ocultar la ActionBar
.
A continuación se muestra cómo puede configurar su aplicación para utilizar el tema de Sherlock: (Debe agregarla en la etiqueta de la aplicación)
android:theme="@style/Theme.Sherlock"
Si sabe cómo ocultar la barra de título en el código, no dude en modificar mi respuesta para incluir su respuesta. Y si alguien puede explicar por qué solo funciona en el archivo de manifiesto y no en el código, sería bueno. :)
Estaba buscando una respuesta para esto. Encontré una solución.
actionBar = getActionBar();
actionBar.hide();
El fragmento anterior eliminará el título de la pestaña y el control deslizante. Espero eso ayude.
Intentalo:
setTheme(R.style.Theme_Sherlock_NoActionBar);
La respuesta de Arci no es del todo correcta. Si lees la documentación de Theming , puedes encontrar eso:
Los temas deben definirse en su manifiesto para toda la aplicación o por actividad. También puede definir el tema en el código de cada actividad antes de llamar a
super.onCreate(Bundle)
. Esto debe hacerse para cada actividad en la que se extienda desde una de las clases base de actividades ''Sherlock'' y pretenda utilizar la barra de acción.
En otras palabras, sería suficiente que intercambies las dos primeras líneas de tu código original:
setTheme(R.style.Theme_Sherlock);
super.onCreate(savedInstanceState);
...
Oculto la barra de título agregando las siguientes líneas de código:
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setDisplayShowHomeEnabled(false);
espero que esto ayude :)
Si está utilizando Xamarin. Se puede utilizar a continuación.
ActionBar.Hide();
Yo tuve el mismo problema. Ninguna de estas respuestas funcionó para mí, todavía tuve un vistazo de la barra de título que se muestra justo antes de que se cargue la barra de acción.
Tuve que establecer el tema de la actividad en NoActionBar en el Manifiesto:
android:theme="@style/Theme.Sherlock.NoActionBar"
Y luego vuelva a establecer el tema dentro de mi actividad justo antes de setContentView ():
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.Theme_Custom);
setContentView(R.layout.activity_home);
}
Esto todavía cargó mi tema personalizado y ya no veo la barra de título cuando se carga la actividad
para ocultar toda la barra de título y mantener solo la barra de acción, use este código:
final ActionBar actionBar = getActionBar();
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayUseLogoEnabled(false);
funciono para mi
vea esta respuesta para mostrar / ocultar gramáticamente la barra de título de ActionBarSherlock ...
<activity android:name=".xxxxxActivity"
android:theme="@style/Theme.Sherlock.NoActionBar"/>