2

嘿伙计们,我是 Android 开发的新手,我正在努力改变我的 ActionBar 的背景。在我的themes.xml文件中添加以下内容时res->values

<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
   <item name="android:background">@drawable/actionbar_background</item> 
</style> 

我收到此错误消息:

error: Error: No resource found that matches the given name (at 'android:background' with value '@drawable/
 actionbar_background').

我不确定为什么我会收到此消息并且可以使用手。

大卫

4

3 回答 3

12

只是猜测,但我敢打赌,您没有任何可绘制的名称actionbar_background.png

仔细检查您的 png 资源中可能存在的拼写错误。它应该在任何drawable文件夹中。或者你可以设置一个颜色.-

<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
   <item name="android:background">#FF0000</item> 
</style> 

请注意,硬编码值是一种不好的做法。如果您最终选择背景颜色,则应考虑在单独的资源文件(即 colors.xml)中为该颜色创建资源项

<color name="red">#FF0000</color>

并在您的项目样式中引用它@color/red

于 2013-09-29T23:22:38.360 回答
5

您可以在创建活动时使用它。(onCreate)

ActionBar bar = getActionBar();
//for color
bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#00C4CD")));
//for image
bar.setBackgroundDrawable(getResources().getDrawable(R.drawable.settings_icon));
于 2013-09-29T23:27:54.283 回答
-1

您在可绘制文件夹中缺少参考文件。你会发现 res 下的文件夹只是在 drawable 下放置了一个名为 actionbar_background 的图像文件,错误应该得到解决。你可以下载图片只是谷歌actionbar_background。希望能帮助到你

于 2015-02-08T15:37:22.347 回答