1. 程式人生 > >Android開發之帶陰影的PopupWindow

Android開發之帶陰影的PopupWindow

先上效果圖,

中間是一個PopupWindow,旁邊為灰色背景.

首先建立一個PopupWindow的子類,初始化控制元件,並設定如下屬性:

this.setContentView(mView);

        this.setWidth(ViewGroup.LayoutParams.MATCH_PARENT);
        this.setHeight(ViewGroup.LayoutParams.MATCH_PARENT);

        this.setFocusable(true);
        /**設定動畫*/
        this.setAnimationStyle(R.style.PopupEnrollAnimation);

        /**背景陰影*/
        ColorDrawable dw = new ColorDrawable(0x80000000);
        this.setBackgroundDrawable(dw);

在這需要注意的是,一定要設定背景陰影.

然後建立這個類的子類,並呼叫showAtLocation()方法.然而,並沒有陰影.

問題出在哪裡呢.

在popupwindow的佈局檔案裡,最外層再巢狀一個RelativeLayout