【问题标题】:ActionBarSherlock becoming transparent when using windowActionBarOverlay使用 windowActionBar Overlay 时 ActionBarSherlock 变得透明
【发布时间】:2013-01-30 21:23:03
【问题描述】:

我正在将 ActionBarSherlock 用于我正在制作的 Android 应用程序,并在我的一个屏幕上显示图像。在此屏幕上,我希望操作栏在用户按下屏幕时消失并返回,而不会拉伸图像。这部分我正在工作,但为此我创建了以下样式并将其应用于该屏幕。 . .

<style name="DarkActionBar.ActionBarOverlay" parent="@style/Theme.Sherlock">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="windowActionBarOverlay">true</item>
</style>

问题是,现在我的操作栏是透明的,我不知道为什么。如果我将我的样式的父级更改为 Theme.Sherlock.Light.DarkActionBar,它不再透明但看起来与 Theme.Sherlock 不同,因此它将与我的应用程序的其余部分不一致。

我还尝试了以下方法。 . .

<style name="MyActionBar" parent="@style/Theme.Sherlock.Light.DarkActionBar">
    <item name="android:background">@color/black</item>
    <item name="background">@color/black</item>
</style>

<style name="DarkActionBar.ActionBarOverlay" parent="@style/Theme.Sherlock">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="windowActionBarOverlay">true</item>
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

谁能告诉我为什么 windowActionBarOverlay 项使我的操作栏变得透明,以及我能做些什么来解决它?谢谢。

【问题讨论】:

    标签: android styles actionbarsherlock transparent


    【解决方案1】:

    由于透明的ActionBar是一个叫做“Actionbar Overlay”的功能,我认为问题出在这一行:

    <item name="windowActionBarOverlay">true</item>
    

    您可能需要将其设置为false

    请阅读以下段落:

    要为操作栏启用覆盖模式,您需要创建一个自定义 扩展现有操作栏主题并设置 android:windowActionBarOverlay 属性为true

    也请看Overlaying the Actionbar on Android Developers

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多