¿Cómo elimino la barra de título en Android Studio?

88

En mi aplicación hay esta barra de título en la parte superior donde estaría el menú adicional, pero no necesito configuraciones y solo tengo una pantalla. Cuando cambio el tema como se describe en muchas otras preguntas, obtengo el antiguo tema 2.2. Quiero tener el tema moderno solo sin la barra en la parte superior.

Jonas
fuente

Respuestas:

150

Vaya a styles.xml y cambie .DarkActionBarpor.NoActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
</style>

se convierte en

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
</style>

si los colores son irrelevantes para su aplicación, puede optar por

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar" />
Sr. Torres
fuente
1
Funciona como se esperaba. Sin embargo, el título también desaparece al ver todas las aplicaciones activas.
IAbstract
¿Cómo arreglarías eso @IAbstract?
Pablo Biedma
@PabloBiedma: No lo sé.
IAbstract
60

En el archivo de manifiesto Cambiar:

    android:theme="@style/AppTheme" >
    android:theme="@style/Theme.AppCompat.NoActionBar"
Tarek Ezzat Abdallah
fuente
4
Si bien esto funciona, editar el styles.xmlarchivo podría ser una mejor opción para la mayoría, ya que el uso de este método ignora cualquier valor que pueda haberse configurado AppThemeen el styles.xmlarchivo. La siguiente solución, que reemplaza la clase principal NoActionBardentro del styles.xmlarchivo, conserva cualquier información de estilo preexistente que se haya configurado.
Lemonseed
En ese caso, todo el fondo de mi aplicación será negro
Sajid khan
24
this.requestWindowFeature(Window.FEATURE_NO_TITLE);

funciona onCreate()cuando setContentView()se invoca put before .

de lo contrario se estrella

Ivo Robotnik
fuente
6
Esto hace que la aplicación se bloquee. Puse la línea en el medio super.onCreate.....y setContentView..... Y se bloquea
Nalorin
Ésta no es la forma correcta de hacerlo. El Sr. Torres lo explicó bien.
Jithin Pavithran
16

En el archivo styles.xml , cambie DarkActionBar a NoActionBar

    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>

Kamesh Kumar Singh
fuente
13

Mira esto

 ActionBar actionBar = getSupportActionBar();
    actionBar.hide();
Manmohan Kumar
fuente
Este es un código de trabajo para ocultar la barra por un programa en sí. Podría colocarse en el constructor onCreate(...)después de las líneas super.onCreate(..)y setContentView(...)para ocultar la barra justo después de que se inicie el programa.
Milan Kerslager
9

Esto funciona para mi

getSupportActionBar().hide();
METEDURA DE PATA
fuente
7

En el archivo de manifiesto, cambie a esto:

android:theme="@style/Theme.AppCompat.Light.NoActionBar" >
XIII
fuente
6

Esto funcionó para mí en values/styles.xmlagregar elementos:

       `<item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>`
Roger Casagrande
fuente
6

Vaya a Proyecto -> aplicación -> principal -> res -> valores -> styles.xml

Cambie esta línea si desea eliminarla para cada vista

 `<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">`

a

 `<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">`

si desea hacerlo solo para una vista, puede cambiarlo en sus datos de manifiesto. Vaya a Android -> manifiestos -> AndroidManifest.xml. haz lo siguiente:

  1. Busque la vista en la que desea obtener este tipo de cambio <activity android:name"...">
  2. Añadir android:theme=""@style/Theme.AppCompat.NoActionBar"
Zitro
fuente
4
  1. estilos abiertos.xml
  2. insertar
 <style name="no_title" parent="AppTheme">
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowContentOverlay">@null</item>
 </style>

puedes cambiar el nombre = "---------"

  1. abrir Androidmaifest.xm

    buscar android: theme = "@ style / AppTheme" cambiar a android: theme = "@ style / no_title"

  2. haga clic en seleccionar Tema en la barra de menú (es de color verde cerca de MainActivity)

    • haga clic en el tema del proyecto
    • haga clic en no_title (en su lado derecho)
    • haga clic en Aceptar
สาธิต งาม เมือง
fuente
4

Para principiantes como yo. Hazlo lo que te digo desde tu proyecto de Android.

aplicación -> res -> valores -> style.xml

reemplazar este código

<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

</resources>

Disfrutar.

MD.JULHAS HOSSAIN
fuente
3

eliminar lo siguiente de activity_main.xml

<android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:popupTheme="@style/AppTheme.PopupOverlay"/>

contáctame para obtener más ayuda

Claude
fuente
2

haz esto en tu archivo de manifiesto:

<application 
    android:icon="@drawable/icon" 
    android:label="@string/app_name" 
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
Rustam
fuente
me cambia al antiguo diseño de Android (fondo negro, cuadros de texto con bordes amarillos ...)
Jonas
intentar android:theme="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen"asegurarse de que está utilizando el nivel API min 14.
Rustam
Puede usar esto para un tema ligero: android: theme = "@ style / Theme.AppCompat.Light.NoActionBar">
XIII
2

this.requestWindowFeature (Window.FEATURE_NO_TITLE);

en onCreate () funciona!

Jonas
fuente
2

Intente cambiar estilos a NoActionBar si eso no funciona agregue este código a su actividad principal

 protected void onCreate(Bundle savedInstanceState) {
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
        ActionBar actionBar = getSupportActionBar();
        actionBar.hide();
        setContentView(R.layout.activity_main);

    }
RajaSekar
fuente
2

Esto funciona para mí, espero que esto funcione para ti también.

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.activity_main);
}
ShehrozEK
fuente
1

La mejor manera es usar la función de la barra de acciones setTitle()si desea mostrar el logotipo o tener algunas otras cosas en su barra de acciones pero no desea ver el nombre de la aplicación, escriba este código en MainActivity.java o en cualquier lugar donde desee ocultar el título onCreate:

android.support.v7.app.ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayShowHomeEnabled(true);
actionBar.setIcon(R.mipmap.full_white_logo_m); // display logo
actionBar.setTitle(""); // hide title

De esta manera, su aplicación no tendrá motivos para fallar.

Perhpethua
fuente
1

Solo usa setTitle(null)arriba

toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

El título desaparecerá y luego podrá usar el logo de su elección .....

Bhupinder Singh
fuente
1

Me he enfrentado al mismo problema que tú y lo resuelvo simplemente cambiando la clase que extendí.

//you will get the app that does not have a title bar at the top.
import android.app.Activity;
public class MainActivity extends Activity
{}

//you will get the app that has title bar at top
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity
{}

Espero que esto resuelva tu problema.

Tee Yi Heng
fuente
0

En AndroidManifest.xmlsu aplicación encontrará el, android:themepor ejemplo, configurado en@style/AppTheme

Ahora vaya a styles.xml, busque la etiqueta de estilo, asegúrese de que el nombre sea AppThemeel mismo que en el manifiesto y configure el padre como android:Theme.Holo.Light.NoActionBar (también haga esto en styles (v21) si lo tiene en su proyecto)

<style name="AppTheme" parent="android:Theme.Holo.Light.NoActionBar">
    <!-- ... -->
</style>
Ayham Rustom
fuente
0

Solo llama setTitle(null);a onCreate ()

Mina Fawzy
fuente
0

prueba: toolbar.setTitle ("");

@Override
protected void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toolbar toolbar = findViewById(R.id.toolbar);
    toolbar.setTitle("");
    setSupportActionBar(toolbar);
}
Khaled
fuente
¡Bienvenido a Stack Overflow! Por favor, no responda solo con el código fuente. Intente proporcionar una descripción agradable sobre cómo funciona su solución. Ver: ¿Cómo escribo una buena respuesta? . Gracias
sɐunıɔ ןɐ qɐp
0

Para eliminar simplemente la barra de título (lo que significa que la barra contiene el nombre de su aplicación) de una actividad, simplemente agrego la siguiente línea a esa actividad en manifests\AndroidManifest.xml:

android:theme="@style/AppTheme.NoActionBar"

Ahora debería verse como a continuación

<activity
  android:name=".MyActivity"
  android:theme="@style/AppTheme.NoActionBar"></activity>

Espero que te sea de utilidad.

Gregorio
fuente