触摸后隐藏对话框

时间:2013-01-24 04:49:58

标签: android

在我的应用程序中,我正在创建一个messageBox,如果我触摸它,我想让它隐身 我用来创建消息的代码是

public void messageBox2() {
    // TODO Auto-generated method stub
    //Dialog    myDialog = new Dialog(MainActivity.this);
    Dialog myDialog = new Dialog(this,R.style.PauseDialog);
       myDialog.setContentView(R.layout.customhelp);
       myDialog.setTitle("Help");
       myDialog.setCancelable(true);
              myDialog.show();
}

如果我点击消息框中的任何地方

,我想让它消失

2 个答案:

答案 0 :(得分:0)

您可以通过将setOnClickListener设置为Dialog的父布局为:

来实现
RelativeLayout relativelayout =(RelativeLayout)findViewById(R.id.your_layout_id);
relativelayout.setOnClickListener(new View.OnClickListener(){
@Override
             public void onClick(View v){
                 // cancel dialog here
               myDialog.dismiss();
             }
         });

答案 1 :(得分:0)

在您的布局中

customhelp代码中创建一个按钮

close_btn   =   (Button)myDialog.findViewById(R.id.close);
close_btn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            myDialog.dismiss();
        }
    });