Android隐藏标题栏与删除Appcompat主题

时间:2015-03-24 20:05:13

标签: android android-layout android-activity

ManinActivity.java

公共类MainActivity扩展了ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {

   // requestWindowFeature(Window.FEATURE_NO_TITLE);

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);
}

的Manifest.xml

<?xml version="1.0" encoding="utf-8"?>

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
     >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.Light.NoTitleBar"
        >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我试过

requestWindowFeature(Window.FEATURE_NO_TITLE); 

功能,但它不会工作!我无法找出原因。

但是当我使用

<activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:theme="@style/Theme.AppCompat.NoActionBar">
它刚刚奏效!!!但我不想使用主题,我可以实用吗?

2 个答案:

答案 0 :(得分:3)

有两种方法可以做到这一点

  1. 将下面的行设置为styles.xml

    <item name="windowActionBar">false</item>
    
  2. 或者

    1. 在ActionBarActivity文件中设置以下行。

      getSupportActionBar().hide();
      

答案 1 :(得分:0)

@Override
protected void onCreate(Bundle savedInstanceState) {
    supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
    super.onCreate(savedInstanceState);
}