2011-12-31 11 views
0

В моем файле styles.xml У меня есть стиль, чтобы удалить строку заголовка и другие стили, чтобы изменить размер шрифта моего TabWidget в:Темы переопределяют друг друга?

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

<style name="RemoveTitleBar" parent="android:Theme"> 
    <item name="android:style/Theme.Black.NoTitleBar.Fullscreen">true</item> 
<item name="android:windowNoTitle">true</item> 

</style> 

<style name="CustomTheme" parent="android:style/Theme"> 
    <item name="android:tabWidgetStyle">@style/CustomTabWidget</item> 
</style> 

<style name="CustomTabWidget" parent="android:style/Widget.TabWidget"> 
    <item name="android:textAppearance">@style/CustomTabWidgetText</item> 
</style> 

<style name="CustomTabWidgetText" parent="android:style/TextAppearance.Widget.TabWidget"> 
    <item name="android:textSize">12sp</item> 
    <item name="android:textStyle">bold</item> 
</style> 

В моей AndroidManifest.xml файла Я установил стиль RemoveTitleBar в приложение, которое отлично работает:

<application 
    android:icon="@drawable/ic_launcher_test_icon" 
    android:label="@string/app_name" 
    android:theme="@style/RemoveTitleBar" 
.... 

Однако, когда я применяю стиль CustomTheme к своей активности с вкладками, я возвращаю заголовок. Но если я удалю линию, она отлично работает.

<activity android:name=".TabActivity" 
       android:label="@string/app_name" 
       android:screenOrientation="portrait" 
       android:theme="@style/CustomTheme"> </activity> 

Я иду об этом неправильно или мне нужно что-то изменить в файле styles.xml? Спасибо за ваше время.

ответ

0

Вы расширяете CustomTheme с "android:style/Theme":

<style name="CustomTheme" parent="android:style/Theme"> 
    <item name="android:tabWidgetStyle">@style/CustomTabWidget</item> 
</style> 

и titleBar доступен в в этом вы не вынимая titleBar, вы снова должны удалить titleBar так:

<style name="CustomTheme" parent="android:style/Theme"> 
    <item name="android:tabWidgetStyle">@style/CustomTabWidget</item> 
    <item name="android:style/Theme.Black.NoTitleBar.Fullscreen">true</item> 
</style> 
+0

Удивительная благодарность. Я фактически изменил оба родителя стилей как parent = "android: style/Theme.NoTitleBar", поэтому мне не нужно было размещать его под каждым элементом. Большое спасибо! : О) – joelreeves