设置图像作为选项菜单的背景

时间:2014-04-08 19:53:44

标签: android android-optionsmenu

我想知道是否可以将重复图片设置为选项菜单的背景而不是经典的黑色?

我想设置这样的东西作为我的背景:

enter image description here

1 个答案:

答案 0 :(得分:1)

创建一个名为 menu_background.xml 的可绘制位图:

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:tileMode="repeat"
    android:src="@drawable/my_background_image" />  

然后,按如下方式自定义 styles.xml

<style name="MyTheme" parent="@style/Theme.Holo.Light">
    <item name="android:dropDownListViewStyle">@style/mListDropDown</item>
</style>  

<style name="mListDropDown" parent="@style/Widget.Holo.Light.ListView.DropDown">
    <item name="android:background">@drawable/menu_background"</item>
    <item name="android:dividerHeight">...</item>
    <item name="android:listSelector">...</item>
</style>  

但是,对于所有设备,您都会遇到很多麻烦 - 主要是重复模式:XML drawable Bitmap tileMode bug?。这个错误是已知的,并且 “在Android 3.0中部分修复并在ICS中完全修复了 ,请参阅对已接受答案的评论:”一个简单的解决方法是更改来自代码“的平铺模式。此外,您可以使用panelFullBackground属性在较低版本上实现此功能,请参阅此示例:How can I change the Options menu background for Android 2.3?

我认为它像无用一样沉重。你会浪费很多时间去做。也许你应该使用 9-patch drawable 或默认的android设计来重新考虑你的设计。我希望这会有所帮助。