【问题标题】:Make transparent action bar without showing block shadow制作透明操作栏而不显示块阴影
【发布时间】:2017-06-12 02:44:08
【问题描述】:

我正在尝试实现android studio附带的动作栏,看起来像这样

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

我已经尝试过 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" />

有没有办法做到这一点? 提前致谢。

【问题讨论】:

    标签: android android-layout android-actionbar


    【解决方案1】:

    尝试在您的 java 文件中实现此功能,而不是使用样式文件执行此操作。将以下功能放入您想要此功能的活动中。在onCreate()方法中设置activity的内容视图前,调用该方法。它可以顺利地在 API 级别 21 及更高级别上运行。

        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);
        }
    
        }
    

    【讨论】:

    • 我正在寻找透明的操作栏,我们稍后会查看通知栏..感谢您的帮助
    • 以上执行相同的功能,如果您希望操作栏在几秒钟后消失以上是好的代码,否则您可以删除前两行功能。
    【解决方案2】:

    试试这个:

    在 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);
    

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

    android:fitsSystemWindows="true"

    【讨论】:

    • 当然 :) 并据此给出结果
    • @SubinCPoonamgode 感谢您的反馈,您能否提供有关您的代码的任何详细信息?
    • 可能是您为活动选择了抽屉主题,然后您需要将此样式添加到该主题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多