我想为我的一些活动隐藏标题栏。问题是,我应用了一个风格,我所有的活动,因此我不能简单地设置主题@android:style/ theme . notitlebar。

使用NoTitleBar主题作为我的样式的父主题将从我的所有活动中删除标题栏。

我可以在某个地方设置无标题样式的项目吗?


当前回答

当我尝试使用那些高赞的答案时,我的应用程序总是崩溃。 (我想这和“@android:style”有关吧?)

对我来说,最好的解决方案是使用以下方法:

android:theme="@style/Theme.AppCompat.NoActionBar"

不再有标题栏。只要把它放在<应用程序>…</application>或<activity>…</activity>取决于你是否(不)想要它在整个应用程序或只是一个特定的活动。

其他回答

我相信,在2020年,这个问题只有一个答案

将以下行添加到styles.xml中

<item name="windowNoTitle">true</item>

添加舱单文件,

  android:theme="@android:style/Theme.Translucent.NoTitleBar"

添加以下行到您的Java文件,

  this.requestWindowFeature(Window.FEATURE_NO_TITLE);

为你使用的主题添加这两个:

    <item name="windowActionBar">false</item>
    <item name="android:windowNoTitle">true</item>

如果你替换了DarkActionBar的定义,你只需要改变style .xml中的AppTheme样式

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

对NoActionBar

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

在androidmanifest .xml中定义的AppTheme

在onCreate()方法中执行此操作。

//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);

//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

//set content view AFTER ABOVE sequence (to avoid crash)
this.setContentView(R.layout.your_layout_name_here); 

这是指活动。