2 xiaoxiaoaishang xiaoxiaoaishang 于 2012.09.20 11:26 提问

在XML中,如何给一个已经有自定义主题的Activity隐藏标题栏?

我想要给我的一些activitys隐藏标题栏。问题是我给我所有的activitys应用了一个样式,因此我不能简单的把内容设置成 @android:style/Theme.NoTitleBar.
给我的样式使用NoTitleBar内容作为父类将移除标题栏里太多的activitys。我在哪里可以设置一个没有标题样式的项目?

4个回答

Sueyexin
Sueyexin   2012.09.20 13:53
已采纳

我是这样做的
我声明了一个从我的大体的样式中继承所有的样式,然后禁用标题栏

<style name="generalnotitle" parent="general">
    <item name="android:windowNoTitle">true</item>
</style>

现在我可以给每个我想要隐藏标题栏的Activity设置这个样式,通过重新应用程序的大的样式,然后继承所有其他的样式信息,因此在样式代码中没有重复的。

liangchichexin
liangchichexin   2012.09.20 11:49

在你的 onCreate() 方法中做这些

//移除标题栏
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//移除通知栏
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

This指的是Activity。

xiaoxiaoaishang
xiaoxiaoaishang 谢谢,但是这不是在XML中
大约 5 年之前 回复
niangzhi
niangzhi   2012.09.20 13:25

你可以修改你的AndroidManifest.xml

<activity android:name=".MainActivity"
          android:label="@string/app_name"
          android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">

你可以在你的工程中的每个activity中都使用这个。

suannai0314
suannai0314 除非你做游戏,否则android:theme="@android:style/Theme.Black.NoTitleBar" 可能更有用。
大约 5 年之前 回复
mansuifengqi
mansuifengqi   2012.09.20 14:35

在developer android页面提到过两种删除标题栏的方法

在manifest.xml里

如果你想要给一个app里所有的activity里的标题栏都删除,把下边的这个加到应用程序中

或者是给一个特定的activity

Csdn user default icon
上传中...
上传图片
插入图片