2013-07-04 5 views
0

Im пытается удалить панель заголовка в верхней части моего приложения.Удалить строку заголовка в xml

Я знаю, что это можно сделать, добавив @android:style/Theme.NoTitleBar к манифесту. Дело в том, что это заставляет тему Holo исчезать на устройствах более высокого уровня. В любом случае я могу удалить заголовок и сохранить оригинальную тему?

-EDIT- Unforiunally эта линия @android:style/Theme.Holo.NoActionBar требует уровень апи выше 11.

ответ

1

Вы можете указать d ifferent темы по умолчанию для разных уровней API.

В Android у вас есть каталоги values-v11 и values. Первый - для всех Android 3.0 и выше (если не указан другой вариант с более высокой версией). Второй - по умолчанию.

В styles.xml из values-v11 вы определяете:

<style name="AppBaseTheme" parent="android:Theme.Holo.NoActionBar"></style> 

и в styles.xml из values:

<style name="AppBaseTheme" parent="android:Theme.NoTitleBar"></style> 

Если положить android:theme="@style/AppBaseTheme" в <application> тега манифеста вы должны держать тему Холо на устройствах с более высокой точностью.

+0

Да! Отличный ответ. Не знал значений - vXX использовался для версий api по-разному. Благодаря! – Sebastian

0

Вы можете попробовать это: -

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 

requestWindowFeature(Window.FEATURE_NO_TITLE); 
... 

}

0

использование ниже метод перед записью setContentView()

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

Использование ниже кода в OnCreate()

if(android.os.Build.VERSION.SDK_INT>11) 
    setTheme(android.R.style.Theme.Holo.NoActionBar); 
else 
    setTheme(android.R.style.Theme_DeviceDefault_NoActionBar); 
Смежные вопросы