3

我正在使用 ActionBarSherlock 并应用了自定义它们来改变操作栏的外观:

<style name="Theme.MyTheme" parent="@style/Theme.Sherlock">
    <item name="android:actionBarStyle">@style/MyTheme.ActionBarStyle</item>
</style>

<style name="MyTheme.ActionBarStyle" parent="@style/Widget.Sherlock.ActionBar">
    <item name="android:background">@drawable/background_action_bar</item>
    <item name="android:icon">@drawable/image_action_bar_logo</item>
</style>

这在运行果冻豆的设备上完美运行,但是当我将它部署在运行 2.2 或 2.3 的模拟器上时,自定义操作栏样式被忽略并使用默认样式。

有任何想法吗?

谢谢大卫

4

1 回答 1

6

你必须调整主题和一点:

<style name="Theme.MyTheme" parent="@style/Theme.Sherlock">
    <!-- define the style for ActionBarSherlock -->
    <item name="actionBarStyle">@style/MyTheme.ActionBarStyle</item>

    <!-- define the style for native ActionBar for Android 4 and higher -->
    <item name="android:actionBarStyle">@style/MyTheme.ActionBarStyle</item>
</style>

编辑:

并适当调整样式:

<style name="MyTheme.ActionBarStyle" parent="@style/Widget.Sherlock.ActionBar">
    <!-- for ActionBarSherlock -->
    <item name="background">@drawable/background_action_bar</item>
    <item name="icon">@drawable/image_action_bar_logo</item>

    <!-- for native ActionBar for Android 4 and higher -->
    <item name="android:background">@drawable/background_action_bar</item>
    <item name="android:icon">@drawable/image_action_bar_logo</item>
</style>
于 2012-11-05T09:52:16.677 回答