Android去掉标题栏方法

  • Post author:
  • Post category:其他


Android中如果我们不需要标题栏(现在大多数是ToolBar),那么我们可以将其去除,去除的方法大体可以分为两种:1、代码中实现;2、AndroidManifest.xml配置文件中实现。接下来,就详细说一下:

1.代码实现

在需要去除标题栏的类,onCreate()方法中,setContentView(R.layout.main)之前加入:

requestWindowFeature(Window.FEATURE_NO_TITLE);,现在基本就可以去除标题栏了。

但是如果Activity继承了AppCompatActivity,这个就失效了 ,加入了上面的方法,但是不能去除标题栏。别着急,按照下面的方法a或者b即可解决:

a、手动在onCreate()里调用下面代码:

if (getSupportActionBar() != null){


getSupportActionBar().hide();

}

b、第二种方法 直接用supportrequestwindowFeature,把1中调用的方法换成下面的就可以了:

supportRequestWindowFeature(Window.FEATURE_NO_TITLE);

2.配置文件中实现

注册Activity时加上如下代码就可以实现:

<activity  android:name=”.Activity”

android:theme=”@android:style/Theme.NoTitleBar”>

</activity>

同样的问题,如果你的Activity继承了AppCompatActivity,以上方法可能会失效,解决办法(a和b选择一种):

a、 直接修改style 。缺点:直接改变全局的Activity;注意:继承的主题DarkActionBar

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

<!– Customize your theme here. –>

<item name=”colorPrimary”>@color/colorPrimary</item>

<item name=”colorPrimaryDark”>@color/colorPrimaryDark</item>

<item name=”colorAccent”>@color/colorAccent</item>

<item name=”android:windowActionBar”>false</item>

<item name=”android:windowNoTitle”>true</item>

</style>

b、需要去除标题栏的Activity 注册中:添加 android:theme=”@style/Theme.AppCompat.NoActionBar”