2012-02-16 74 views
0

在我的android应用程序中,当我点击一个按钮时,它显示一个弹出框,但我无法通过单击相同的按钮或弹出框外的任何其他位置来关闭该框。我在这里附上了我的android代码弹出功能。我尝试加入如何关闭以下android代码中的弹出框?

m_pw.dismiss();

功能,但它太失败了。

popup.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v){ 
      LayoutInflater inflater =(LayoutInflater) ChooseFileActivity.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      View layout = inflater.inflate(R.layout.saved,null); 
      m_pw = new PopupWindow(layout, 400, 300, true); 
      popup(v, layout); 
     } 


    }); 

public void popup(View v, View layout){ 
    if (m_pw.isShowing()) { 
     m_pw.dismiss(); 
    } else { 
     m_pw.showAtLocation(layout, Gravity.TOP, -80, 80); 


    } 
} 

回答

0

这是因为弹出窗口不响应onTouch或onKey事件,除非它的背景为!= null。

检查进一步clarifiactaion以下链接:

Android popup window dismissal