2016-12-22 3 views
3

ポップアップウィンドウを開いた後に背景を暗くしたいと思います。私はGoogleを検索し、チュートリアルも見てきました。しかし、私はそれがどのように可能であるか理解できません。ここでは私のJavaコードです:ポップアップウィンドウが開いた後に背景が暗くなってしまいました

public void displayPopupWindow() { 
    View layout = getLayoutInflater().inflate(R.layout.popup,null); 
    final PopupWindow popup = new PopupWindow(this); 
    popup.setContentView(layout); 
    popup.setOutsideTouchable(true); 
    popup.setFocusable(true); 
    popup.setWidth(400); 
    popup.setHeight(580); 
    popup.showAtLocation(layout, Gravity.CENTER, 0, 0); 
    popup.setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 
    Button button = (Button) layout.findViewById(R.id.button); 
    button.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View layout) { 
      popup.dismiss(); 
     } 
    }); 

} 

ここに私のポップアップXMLコードは:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="@color/colorPrimary" 
android:id="@+id/popup" 
> 
Various views and button 
</RelativeLayout> 

は私が今何をすべきでしょうか?

+0

http://stackoverflow.com/questions/3221488/blur-or-dim-background-when-android-popupwindow-active –

+0

わかりません。 –

+0

私はすでにこれを試しています。しかし、それは私のために働いていません –

答えて

0

あなたは選択肢ごとのように任意の背景を変更することができ、あなたのコード内で

popup.setBackgroundDrawable(new ColorDrawable(Color.BLACK)); 

をこれに

popup.setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 

を交換

これを試してみることができます。

+0

は動作しません@Apoorv Mehrotra –

+0

はあなたのcolor.javaファイルでこれと同様に定義された黒色です –

+0

を確認してください@ColorInt public static final int BLACK = 0xFF000000; –

関連する問題