数日間アプリでテーマを設定しようとしましたActionBar
が、まったく結果を得ることができませんでした. 私が見逃している非常に小さなものがあるに違いありません。
ただし、次のコードは redActionBar
になりますが、TabBar
スタイルはまったく設定されていません。Theme.PiVi
の親を別の親に変更するTabBar
と、対応するテーマでスタイルが設定されます。
私がテストしているデバイスは、Android 4.0.3 (API 15) を実行している HTC Sensation です。
android:theme
マニフェストの他の場所でプロパティをオーバーライドしていません。
AndroidManifest.xml (抜粋)
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.PiVi">
res/values-v14/themes.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.PiVi" parent="@style/Theme.Sherlock.Light.DarkActionBar">
<item name="actionBarStyle">@style/Widget.PiVi.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.PiVi.ActionBar</item>
<item name="actionBarTabBarStyle">@style/Widget.PiVi.ActionBar.TabBar</item>
<item name="android:actionBarTabBarStyle">@style/Widget.PiVi.ActionBar.TabBar</item>
<item name="actionBarTabTextStyle">@style/Widget.PiVi.ActionBar.TabText</item>
<item name="android:actionBarTabTextStyle">@style/Widget.PiVi.ActionBar.TabText</item>
<item name="actionBarTabStyle">@style/Widget.PiVi.ActionBar.TabView</item>
<item name="android:actionBarTabStyle">@style/Widget.PiVi.ActionBar.TabView</item>
</style>
</resources>
res/values-v14/styles.xml
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="Widget.PiVi.ActionBar" parent="@style/Widget.Sherlock.ActionBar">
<item name="android:background">#FFFF0000</item>
</style>
<style name="Widget.PiVi.ActionBar.TabBar" parent="@style/Widget.Sherlock.ActionBar.TabBar">
<item name="android:background">#FFFF0000</item>
</style>
<style name="Widget.PiVi.ActionBar.TabText" parent="@style/Widget.Sherlock.ActionBar.TabText">
<item name="android:color">#FFFF0000</item>
</style>
<style name="Widget.PiVi.ActionBar.TabView" parent="@style/Widget.Sherlock.ActionBar.TabView">
<item name="android:background">#FFFF0000</item>
</style>
</resources>