0

新しいテーマを作成してアクション バーをカスタマイズしようとしています。

<resources>

    <style name="Theme.Shappy.Red" parent="Theme.Sherlock.Light">
        <item name="android:actionBarStyle">@style/ActionBar.Shappy.Red</item>
        ...
        ... [some_other_customizations]
    </style>

    <!-- Action bar -->
    <style name="ActionBar.Shappy.Red" parent="@style/Widget.Sherlock.Light.ActionBar.Solid">        
        <item name="android:background">#ffb70000</item>
        <item name="android:titleTextStyle">@style/ActionBar.Title.Shappy.Red</item>
    </style>

    <!-- Action bar text -->
    <style name="ActionBar.Title.Shappy.Red" parent="@style/TextAppearance.Sherlock.Widget.ActionBar.Title">
            <item name="android:textColor">#ddffffff</item>
    </style>
</resources>

ご覧のとおり、Sherlock を使用しています。このコードは API レベル 14 では正常に機能しますが、API レベル 10 では機能しません。Holo ライトのようなアクション バーが引き続き表示されます。[some_other_customizations] が正しく適用されているので、コードは正しいと思います。何か提案はありますか?ありがとう。

4

1 に答える 1

4
 <item name="android:actionBarStyle">@style/ActionBar.Shappy.Red</item>

それ以外の " " が前に付いているものはすべてandroid:、デフォルトのアクションバーに適用されます。これもスタイルに入れる必要があります。

<item name="actionBarStyle">@style/ActionBar.Shappy.Red</item>

これは、ABS のスタイルをオーバーライドします。したがって、API レベル 13< で動作するには、スタイルは次のようになります。

<style name="Theme.Shappy.Red" parent="Theme.Sherlock.Light">
    <item name="android:actionBarStyle">@style/ActionBar.Shappy.Red</item>
    <item name="actionBarStyle">@style/ActionBar.Shappy.Red</item>
</style>

<!-- Action bar -->
<style name="ActionBar.Shappy.Red" parent="@style/Widget.Sherlock.Light.ActionBar.Solid">
    <item name="android:background">#ffb70000</item>
    <item name="background">#ffb70000</item>
    <item name="android:titleTextStyle">@style/ActionBar.Title.Shappy.Red</item>
    <item name="titleTextStyle">@style/ActionBar.Title.Shappy.Red</item>
</style>

<!-- Action bar text -->
<style name="ActionBar.Title.Shappy.Red" parent="@style/TextAppearance.Sherlock.Widget.ActionBar.Title">
    <item name="android:textColor">#ddffffff</item>
    <item name="textColor">#ddffffff</item>
</style>

于 2012-11-06T20:45:07.987 に答える