制作透明操作栏而不显示块阴影

时间:2017-06-12 02:44:08

标签: android android-layout android-actionbar

我正在尝试使用android studio附带的操作栏,看起来像enter image description here

我正在尝试使操作栏透明。

我尝试了thisthis以及其他许多事情。我是android中xml设计和样式的新手。

这是我的styles.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />

有没有办法实现这个目标? 提前谢谢。

2 个答案:

答案 0 :(得分:2)

尝试在您的java文件中实现此功能,而不是使用样式文件。请在您希望此功能的活动中添加以下函数。在设置活动的内容视图之前,在onCreate()方法中,调用此方法。它将适用于21级及以上的API。

    public void makeActivityFullscreenTransparent(){


    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);

    // Making notification bar transparent
    if (Build.VERSION.SDK_INT >= 21) {
        getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
    }

    }

答案 1 :(得分:1)

试试这个:

enter image description here

在style.xml中:

    <style name="AppTheme.ActionBar.Transparent" parent="AppTheme">
        <item name="android:windowContentOverlay">@null</item>
        <item name="windowActionBarOverlay">true</item>
        <item name="colorPrimary">@android:color/transparent</item>
    </style>

活动:

 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

在布局中将此行添加到主元素:

  

机器人:fitsSystemWindows = “真”