Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 操作栏覆盖不工作_Android_Android Actionbar - Fatal编程技术网

Android 操作栏覆盖不工作

Android 操作栏覆盖不工作,android,android-actionbar,Android,Android Actionbar,我使用来启用ActionBar覆盖,但不起作用 操作栏不透明,布局在操作栏下方 结果: 预期: 风格 @风格/习俗 @风格/习俗 真的 真的 主平面布置图 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_par

我使用来启用ActionBar覆盖,但不起作用

操作栏不透明,布局在操作栏下方

结果:

预期:

风格


@风格/习俗
@风格/习俗
真的
真的
主平面布置图

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#AABBCC"
    tools:context=".MainActivity">

</RelativeLayout>

您需要将Appcompat主题中的windowActionBarOverlay属性设置为true,您正在绘制的relativeLayout仅从它知道的顶部开始,即操作栏下方。它需要在主样式中设置,而不是在actionbarstyle中设置

然后可以将工具栏样式中的android:background设置为透明,以获得所需的效果

要显示我们在项目中使用以获得透明工具栏的一些代码,请执行以下操作:

<style name="ToolBarStyle.Transparent" parent="">
    <item name="popupTheme">@style/ThemeOverlay.AppCompat.Dark</item>
    <item name="android:background">@android:color/transparent</item>
    <item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
</style>

<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="windowActionBarOverlay">true</item>
</style>

@style/ThemeOverlay.AppCompat.Dark
@android:彩色/透明
@style/ThemeOverlay.AppCompat.Dark.ActionBar
真的
真的

注意,工具栏样式是用xml在工具栏上设置的,后来被设置为actionbar。

开发人员指南的文档中说,在“应用程序主题”中设置windowActionBarOverlay,它扩展了父主题(在本例中为AppCompat),我更改后仍然无法工作Hello ThMBc,您能给我看一些代码吗?仍然无法使用此代码覆盖工作,但我没有actionBar。我将背景颜色设置为“#338660”,这是因为此主题的父级是NoActionBar主题,所以我们使用工具栏。因此,如果您将.NoActionBar保留在父值上,则应获得正常的actionbar。
<style name="ToolBarStyle.Transparent" parent="">
    <item name="popupTheme">@style/ThemeOverlay.AppCompat.Dark</item>
    <item name="android:background">@android:color/transparent</item>
    <item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
</style>

<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="windowActionBarOverlay">true</item>
</style>