如何使弹出窗口BG模糊

时间:2013-03-06 05:25:51

标签: java android popupwindow

在我的应用程序中,我使用弹出窗口,它看起来像这样,但弹出窗口的背景并不模糊,如何让它显得模糊。

这是代码,

View v1 = inflatter.inflate(R.layout.problemlistmenu_popup, null);
                v1.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
                int height1 = v1.getMeasuredHeight();
                clickOnProblemName = new PopupWindow(showProblemMenu(details), (int) (width * 0.8), height1, true);
                clickOnProblemName.showAtLocation(mainlayout, Gravity.CENTER, 0, 0);

showProblemMenu

  protected View showProblemMenu(String details) {
        View v = null;
            v = inflatter.inflate(R.layout.problemlistmenu_popup, null);
return v;
}

这是xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mainlayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/silver002"
    android:orientation="vertical" >



    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:background="@drawable/headerstyle1" >

        <TextView
            android:id="@+id/tvHeaderText"
            android:layout_width="match_parent"
            android:layout_height="30dp"
            android:gravity="left|center_vertical"
            android:paddingLeft="5dp"
            android:text=""
            android:textColor="@android:color/white"
            android:textSize="12dp"
            android:textStyle="bold" />

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="30dp"
            android:layout_marginTop="4dp"
            android:gravity="right|center_vertical" >

            <TextView
            android:id="@+id/tvCancel"
            android:layout_marginRight="3dp"
            android:layout_width="wrap_content"
            android:layout_height="25dp"
            android:paddingLeft="4dp"
            android:paddingRight="4dp"
            android:layout_marginTop="2dp"
            android:background="@drawable/backgroundstyle_btn1"
            android:layout_gravity="right"
            android:text="Cancel"
            android:gravity="center"
            android:textColor="@android:color/white"
            android:textSize="14dp"
            android:textStyle="bold" />




        </LinearLayout>
    </FrameLayout>

    <ScrollView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:padding="5dp"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/tvChronic"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="3dp"
                android:padding="10dp"
                android:textColor="@android:color/black"
                android:text=""
                 android:textStyle="bold"
                android:background="@drawable/row_selector"
                android:textSize="14dp" />
            <TextView
                android:id="@+id/tvResolved"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="3dp"
                android:padding="10dp"
                android:text="Change to Resolved"
                 android:textStyle="bold"
                android:background="@drawable/row_selector_alternative"
                android:textColor="@android:color/black"
                android:textSize="14dp" />


            <TextView
                android:id="@+id/tvProblemName"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="3dp"
                android:padding="10dp"
                android:text="Edit Problem Name"
                android:textStyle="bold"
                android:background="@drawable/row_selector"
                android:textColor="@android:color/black"
                android:textSize="14dp" />

             <TextView
                android:id="@+id/tvComments"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="3dp"
                android:padding="10dp"
                android:text="Edit Comments"
                 android:textStyle="bold"
                android:background="@drawable/row_selector_alternative"
                android:textColor="@android:color/black"
                android:textSize="14dp" />



        </LinearLayout>
    </ScrollView>

</LinearLayout>

提前致谢。

2 个答案:

答案 0 :(得分:1)

这里有一个非常好的教程,向您展示如何执行此操作: http://www.stealthcopter.com/blog/2010/01/android-blurring-and-dimming-background-windows-from-dialogs/

答案 1 :(得分:0)

愿这个帮助

    mPopupWindow.setTouchable(true);
    mPopupWindow.setFocusable(false);
    mPopupWindow.setOutsideTouchable(false);