0

我需要为不同的片段为动作栏设置不同的背景图像。我正在使用 v4 支持包。但我得到的是白色背景而不是给定的图像。

下面是我使用的代码。

getActivity().getActionBar().setBackgroundDrawable(getActivity().getResources().getDrawable(R.id.image));

并且

Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.image);
        BitmapDrawable actionBarBackground = new BitmapDrawable(getResources(), bMap);
        ActionBar bar = getActivity().getActionBar();
        bar.setBackgroundDrawable(actionBarBackground);

我已经创建了这种样式并在活动清单中使用它

android:theme="@style/ActionBarTheme"

 <style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
 <item name="android:background">@drawable/image</item>
 </style>

 <style name="ActionBarTheme" parent="@android:style/Theme.Holo.Light">
 <item name="android:actionBarStyle">@style/MyActionBar</item>
 </style>
4

2 回答 2

2

试试这个

getActivity().getActionBar().setBackgroundDrawable(getActivity().getResources().getDrawable(R.drawable.image));
于 2013-12-24T08:33:52.783 回答
0
<style name="CustomActivityTheme" parent="@android:style/Theme.Holo.Light">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <!-- other activity and action bar styles here -->
    </style>

    <!-- style for the action bar backgrounds -->
    <style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
        <item name="android:background">@drawable/actionbar_background</item>
    </style>

在您的清单文件中:

 <activity android:name=".activity"
                  android:theme="@style/CustomActivityTheme"/>
于 2013-06-21T09:55:57.450 回答