弹出窗口android与alpha后视图

时间:2017-01-30 08:13:56

标签: android popup android-alertdialog

如何做到这一点,我实际上有这个代码:

public void openDialog() {
    final Dialog dialog = new Dialog(this); // Context, this, etc.
    dialog.setContentView(R.layout.fragment_wrongpass_reg);
    dialog.setTitle("cualquier cosa");
    dialog.show();
}

我需要在后面的屏幕上添加alpha,使其几乎透明,就像在这张图片中一样:

here is the image

1 个答案:

答案 0 :(得分:1)

您需要创建一个全屏对话框,使用自定义主题设置它。

创建一个全屏对话框,并使用内部填充设置其内容。 像这样的东西:

 <RelativeLayout
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:background="#cb000000"
   android:padding="20dp">
   <LinearLayout
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_centerInParent="true"
       android:orientation="vertical"
       ....
       ....
       YOUR CONTENT
       ....
       ..../>
 </RelativeLayout>

自定义主题应该是这样的:

<style name="Dialog_Fullscreen">
    <item name="android:windowActionBar">false</item>
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">fill_parent</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
</style>

最后,将其设置为对话框,如下所示:

final dialog = new Dialog(context, R.style.Dialog_Fullscreen);