Android - Actionbar不透明

时间:2014-10-30 14:31:11

标签: android xml android-actionbar transparent

我正在尝试实现透明的操作栏背景效果,虽然奇怪的是它不起作用。 我想要执行此操作的活动称为“UnitActivity”,这里是xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/

</LinearLayout>

在我的styles.xml

    <style name="mangoTheme.UnitActivityActionBarStyle" parent="@android:style/Widget.Holo.Light.ActionBar">
        <item name="android:windowActionBarOverlay">true</item>
        <item name="android:background">@drawable/transparent</item>
    </style>

在我的themes.xml

  <style name="mangoTheme.UnitActivityTheme" parent="android:Theme.Holo.Light.DarkActionBar">
      <item name="android:actionBarStyle">@style/mangoTheme.UnitActivityActionBarStyle</item>
  </style>
在我的manifest.xml中

<activity android:name=".UnitActivity"
    android:label="Unit Selection"
    android:parentActivityName=".MainActivity"
    android:theme="@style/mangoTheme.UnitActivityTheme">
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".MainActivity" />
    </activity>
<activity

以下是我使用的9补丁文件,即“@ drawable / transparent”

enter image description here

注:: 我还尝试编写一个可绘制的形状,并将其用作动作栏的背景,其中包含以下代码:

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <solid android:color="#00FFFFFF"/>
</shape>

我只是为我的操作栏获得了灰色背景颜色......由于我的activity_unit.xml背景,你认为它会变成橙色。我必须在这一点上遗漏一些小事:S

1 个答案:

答案 0 :(得分:1)

<强>解决:

原来我把android:windowActionBarOverlay设置放在错误的位置(在操作栏样式资源中作为主题资源的附件)

更正了themes.xml

 <style name="mangoTheme.UnitActivityTheme" parent="@android:style/Theme.Holo">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="android:actionBarStyle">@style/mangoTheme.UnitActivityActionBarStyle</item>
 </style>

更正了styles.xml

<style name="mangoTheme.UnitActivityActionBarStyle" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">@drawable/transparent</item>
</style>