Como faço para remover a barra de título no Android Studio?

88

No meu aplicativo, há essa barra de título na parte superior, onde estaria o menu flutuante, mas não preciso de configurações e tenho apenas uma tela. Quando eu mudo o tema conforme descrito em muitas outras questões, eu obtenho o antigo tema 2.2. Quero ter o tema moderno, sem a barra na parte superior.

Jonas
fonte

Respostas:

150

Vá para styles.xml e mude .DarkActionBarpara.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>

torna-se

<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>

se as cores são irrelevantes para o seu aplicativo, você pode realmente ir para

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar" />
Senhor torres
fonte
1
Funciona conforme o esperado. No entanto, o título também desaparece ao visualizar todos os aplicativos ativos.
IAbstract
como você consertaria isso @IAbstract?
Pablo Biedma
@PabloBiedma: Não sei.
IAbstract
60

No arquivo de manifesto Alterar:

    android:theme="@style/AppTheme" >
    android:theme="@style/Theme.AppCompat.NoActionBar"
Tarek Ezzat Abdallah
fonte
4
Embora isso funcione, editar o styles.xmlarquivo pode ser uma opção melhor para a maioria, já que usar esse método ignora quaisquer valores que possam ter sido configurados AppThemeno styles.xmlarquivo. A solução abaixo, que substitui a classe pai NoActionBardentro do styles.xmlarquivo, preserva todas as informações de estilo pré-existentes que foram configuradas.
Lemonseed 01 de
Nesse caso, todo o fundo do meu aplicativo ficará preto
Sajid khan
24
this.requestWindowFeature(Window.FEATURE_NO_TITLE);

funciona onCreate()quando put before setContentView()é invocado.

caso contrário, ele trava

Ivo Robotnik
fonte
6
Isso faz com que o aplicativo trave. Eu coloco a linha entre super.onCreate.....e setContentView..... E ela falha
Nalorin
Esta não é a maneira correta de fazer isso. O Sr. Torres explicou bem.
Jithin Pavithran
16

No arquivo styles.xml , altere DarkActionBar para 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
fonte
13

Verifique isto

 ActionBar actionBar = getSupportActionBar();
    actionBar.hide();
Manmohan Kumar
fonte
Este é um código funcional para ocultar a barra pelo próprio programa. Pode ser colocado no construtor onCreate(...)após as linhas super.onCreate(..)e setContentView(...)para ocultar a barra logo após o programa ser iniciado.
Milan Kerslager
9

Isso funciona para mim

getSupportActionBar().hide();
B.ÖNER
fonte
7

No arquivo de manifesto, mude para este:

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

Isso estava funcionando para mim em values/styles.xmladicionar itens:

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

Vá para Projeto -> aplicativo -> principal -> res -> valores -> estilos.xml

Altere esta linha se quiser apagá-la para todas as vistas

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

para

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

se quiser torná-lo apenas para uma visualização, você pode alterá-lo nos dados do manifesto. Vá para Android -> manifestos -> AndroidManifest.xml. faça o seguinte:

  1. Pesquise a vista da qual deseja obter este tipo de alteração <activity android:name"...">
  2. Adicionar android:theme=""@style/Theme.AppCompat.NoActionBar"
Zitro
fonte
4
  1. abrir styles.xml
  2. inserir
 <style name="no_title" parent="AppTheme">
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowContentOverlay">@null</item>
 </style>

você pode alterar o nome = "---------"

  1. abra Androidmaifest.xm

    find android: theme = "@ style / AppTheme" chang to android: theme = "@ style / no_title"

  2. clique em selecionar Tema no menu (é de cor verde perto de MainActivity)

    • clique no tema do projeto
    • clique em no_title (do seu lado direito)
    • Clique OK
สาธิต งาม เมือง
fonte
4

Para iniciantes como eu. Apenas faça o que eu digo. Do seu projeto Android.

app -> res -> valores -> style.xml

substitua 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>

Aproveitar.

MD.JULHAS HOSSAIN
fonte
3

exclua o seguinte 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"/>

contate-me para mais ajuda

Claude
fonte
2

faça isso em seu arquivo de manifesto:

<application 
    android:icon="@drawable/icon" 
    android:label="@string/app_name" 
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
Rustam
fonte
ele me muda para o antigo design do Android (fundo preto, caixas de texto com bordas amarelas ...)
Jonas
tente android:theme="@android:style/Theme.DeviceDefault.NoActionBar.Fullscreen"certificar-se de que está usando o nível de API mínimo 14.
Rustam
Você pode usar isso para um tema leve: android: theme = "@ style / Theme.AppCompat.Light.NoActionBar">
XIII
2

this.requestWindowFeature (Window.FEATURE_NO_TITLE);

em onCreate () funciona!

Jonas
fonte
2

Tente alterar os estilos para NoActionBar se isso não funcionar, adicione este código à sua atividade 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
fonte
2

Isso funciona para mim, espero que funcione para você também

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
fonte
1

A melhor maneira é usar a função de barra de ação setTitle()se desejar mostrar o logotipo ou ter alguma outra coisa em sua barra de ação, mas não quiser ver o nome do aplicativo, escreva este código em MainActivity.java ou em qualquer lugar em que deseja ocultar o 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

Dessa forma, seu aplicativo não terá motivo para travar.

Perhpethua
fonte
1

Basta usar setTitle(null)acima

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

O título desaparecerá, então você pode usar o logotipo de sua escolha .....

Bhupinder Singh
fonte
1

Eu enfrentei o mesmo problema que você, e resolvo esse problema apenas mudando a classe que eu estendi.

//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 isto resolva o seu problema.

Tee Yi Heng
fonte
0

Em AndroidManifest.xmlseu aplicativo, você encontrará o, android:themepor exemplo, definido como@style/AppTheme

Agora vá para styles.xml, encontre a tag de estilo, certifique-se de que o nome está definido como AppThemeo mesmo que no manifesto e defina pai como android:Theme.Holo.Light.NoActionBar (também faça isso em estilos (v21) se você tiver em seu projeto

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

Basta chamar setTitle(null);onCreate ()

Mina Fawzy
fonte
0

tente: 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
fonte
Bem-vindo ao Stack Overflow! Por favor, não responda apenas com o código-fonte. Tente fornecer uma boa descrição sobre como sua solução funciona. Veja: Como escrevo uma boa resposta? . Obrigado
sɐunıɔ ןɐ qɐp
0

Para simplesmente remover a barra de título (o que significa que a barra contém o nome do seu aplicativo) de uma atividade, eu simplesmente adiciono a linha abaixo a essa atividade no manifests\AndroidManifest.xml:

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

Agora deve ser semelhante a abaixo

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

Espero que seja útil.

Gregorio
fonte