Android背景变暗

时间:2016-03-01 12:39:42

标签: java android toolbar statusbar

是否有人知道如何以编程方式使View'salertDialog这样的NavigationDrawer背景变暗?我需要背景重叠ToolBar(1)和StatusBar,但StatusBar的图标应该是可见的(2)。就我而言,它不应该是dialog。例如,我必须使ButtonCustomView周围的背景变暗。

Example Image

1 个答案:

答案 0 :(得分:0)

我很长一段时间都在寻找这个问题的答案,但最后我找到了解决方案。

我研究了代码“DialogPlus”库,找出了关键点。

orhanobut/dialogplus

<强> getWindow().getDecorView();

final LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
        final View background = inflater.inflate(R.layout.frame, null);
        final Animation a = AnimationUtils.loadAnimation(this, R.anim.in);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                ViewGroup decorView = (ViewGroup) getWindow().getDecorView().findViewById(android.R.id.content);
                decorView.addView(background);
                background.startAnimation(a);
            }
        });

后台资源文件:

<?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">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/black"
        android:alpha="0.5"></FrameLayout>
</LinearLayout>