0

我正在使用自定义主题在我的操作栏上显示自定义背景。M 使用 Actionbar Compat。我在不同的设备上运行,它在手机 + 版本 < 3.0 中给出了奇怪的结果。因此,经过一些测试后,我发现即使我将透明颜色设置为背景,我仍然会得到一些东西。相同的代码在我的 nexus 4 上运行良好。见附图。

在此处输入图像描述

我的清单:

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name">
    <activity
        android:name="com.abtest.MainActivity"
        android:label="@string/app_name" 
        android:theme="@style/CustomActionBarTheme">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我的风格:

<style name="Widget.Custom.TitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
    <item name="android:textColor">@color/actionbar_text_color</item>
</style>

<style name="Widget.Custom.Common" parent="@style/Widget.AppCompat.ActionBar">
    <item name="titleTextStyle">@style/Widget.Custom.TitleTextStyle</item>
</style>

<style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light">
    <item name="actionBarStyle">@style/MyActionBar</item>
</style>

<style name="MyActionBar" parent="@style/Widget.Custom.Common">
    <item name="background">@color/actionbar_background</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="windowActionBarOverlay">false</item>
</style>

我的操作栏背景:

<color name="actionbar_background">#00000000</color>
4

2 回答 2

1

进入android:windowContentOverlay你的CustomActionBarTheme定义。例如

<style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light">
    <item name="android:windowContentOverlay">@null</item>
    <item name="actionBarStyle">@style/MyActionBar</item>
</style>
于 2013-10-01T13:07:44.907 回答
0

首先,恭喜你有一个“你的”关系 4. 尝试在 MyActionBar 中添加它

<item name="android:background">@color/actionbar_background</item>
于 2013-10-01T13:03:41.813 回答