我正在尝试几个小时来覆盖自定义标签样式的AppCombat主题,但我的更改没有任何效果。这是我的style.xml
<style name="AppTheme" parent="@style/Theme.AppCompat.Light">
<item name="actionBarTabStyle">@style/MyActionBarTabs.AppTheme</item>
</style>
<!-- ActionBar tabs styles -->
<style name="MyActionBarTabs.AppTheme" parent="@style/Widget.AppCompat.ActionBar.TabView">
<item name="background">@drawable/tab_bar_background</item>
</style>
我使用android-support-libray-v7在较旧的Android版本中使用ActionBarTabStyle
。这是tab_bar_background.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false"
android:state_pressed="false"
android:drawable="@color/boni_red" />
<item android:state_focused="false" android:state_selected="true"
android:state_pressed="false"
android:drawable="@color/boni_red" />
<!-- Focused states (such as when focused with a d-pad or mouse hover) -->
<item android:state_focused="true" android:state_selected="false"
android:state_pressed="false"
android:drawable="@color/boni_red" />
<item android:state_focused="true" android:state_selected="true"
android:state_pressed="false"
android:drawable="@color/boni_red" />
<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false"
android:state_pressed="true"
android:drawable="@color/boni_red" />
<item android:state_focused="false" android:state_selected="true"
android:state_pressed="true"
android:drawable="@color/boni_red" />
<!-- Focused states (such as when focused with a d-pad or mouse hover) -->
<item android:state_focused="true" android:state_selected="false"
android:state_pressed="true"
android:drawable="@color/boni_red" />
<item android:state_focused="true" android:state_selected="true"
android:state_pressed="true"
android:drawable="@color/boni_red" />
在TabActivity
课程中,我只使用TabHost
添加了一些标签,此活动的布局如下所示:
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/TabBarLinearLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/header_logo"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="@color/boni_red"
android:text="@string/app_name_capital"
android:textStyle="bold"
android:gravity="center"
android:textSize="25sp"/>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1">
</FrameLayout>
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0">
</TabWidget>
</LinearLayout>
我刚刚按照android developer page提供的教程。 我的应用程序中的tabbar看起来像图片中的lightbar。
为什么我的风格不会覆盖标准风格的任何建议?实际上一切都应该是红色的!我做错了吗? 谢谢和最好的问候, 最大
答案 0 :(得分:0)
添加以下内容:values-v11(不要忽略'android:')
<style name="AppTheme" parent="@style/Theme.AppCompat.Light">
<item name="android:actionBarTabStyle">@style/MyActionBarTabs.AppTheme</item>
在styles.xml中修改以下内容(不要忽略'android:')
<item name="android:background">@drawable/tab_bar_background</item>
`