以编程方式创建全屏RelativeLayout

时间:2017-04-17 07:03:12

标签: android android-layout views relativelayout programmatically

我需要以编程方式创建一个全屏RelativeLayout,就像对话框的灰色背景一样(它位于每个视图的顶部)。

我试试这个,但ActionBar就在上面:

rlContainerLayout = new RelativeLayout(activity);
rlContainerLayout.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT , RelativeLayout.LayoutParams.MATCH_PARENT ));
rlContainerLayout.setBackgroundColor(ContextCompat.getColor(activity,R.color.color_gray));
activity.addContentView(rlContainerLayout, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));

那我怎样才能实现对话框背景呢?

1 个答案:

答案 0 :(得分:2)

在创建布局之前尝试此操作。

 setTheme(android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        if (getSupportActionBar() != null) {
            getSupportActionBar().hide();
        }

    create and add your Views here