我正在将我的应用程序的 ActionBar 移动到 ActionBarSherlock 并且我正在尝试使用平铺背景自定义背景。我正在两台真实设备上测试我的代码,一台运行 Android 2.1,另一台运行 Android 4.0.4。
下面的代码适用于 ICS 设备(背景确实重复),但不适用于 Eclair 设备(背景被拉伸而不是重复)。我还在 Android 2.3 模拟器上对此进行了测试,并且背景也不会重复。似乎tileMode="repeat"
只在 ICS 上工作。
主题.xml:
<style name="Theme.Opheodrys.Base" parent="Theme.Sherlock.Light">
<item name="android:actionBarStyle">@style/Opheodrys.Widget.ActionBar</item>
<item name="actionBarStyle">@style/Opheodrys.Widget.ActionBar</item>
</style>
<style name="Opheodrys.Widget.ActionBar" parent="Widget.Sherlock.Light.ActionBar">
<item name="android:background">@drawable/ab_background_pattern</item>
<item name="background">@drawable/ab_background_pattern</item>
</style>
ab_background_pattern.xml:
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/ab_background_tile"
android:tileMode="repeat"
tileMode="repeat" /> <!-- I've added this just in case, but it doesn't seem to be needed -->