在安卓以前的版本中,我們會使用以下兩種方式來去掉頂部自帶的標題欄:
1、在代碼中實現:
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
2、在AndroidManifest.xml中實現:
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar">
或者先在style文件中定義
<?xml version="1.0" encoding="UTF-8" ?>
<resources>
<style name="notitle"> <item name="android:windowNoTitle">true</item> </style>
</resources>
之後在中引用
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/notitle">
但是新版android推薦使用的是繼承ActionBarActivity的Activity,這時再使用上述兩種方法去掉標題欄,當應用點擊菜單鍵的時候則會出現空指針異常的錯誤,或者APP會出現閃退。
這是因為Activity繼承了ActionBarActivity,它來自android.support.v7.app.ActionBarActivity。
所以就要使用與其配合的AppCompat的theme才行
解決的辦法之一就是讓Activity去繼承Activity而不是ActionBarActivity。
如果非要繼承ActionBarActivity的話,這時可以用下面的方法來去掉標題欄:
在Activity的onCreate方法中,在setContentView(R.layout.activity_main);之前添加
ActionBar actionBar = getSupportActionBar();
actionBar.hide();
這兩行代碼即可去掉標題欄。