How to know if a dialog is dismissed in Android?

后端 未结 4 1667
面向向阳花
面向向阳花 2020-12-29 19:43

If the dialog is dismissed,I want to do something for my background.So I want to know if the dialog is dismissed

4条回答
  •  南笙
    南笙 (楼主)
    2020-12-29 20:48

    When dialog closed, you can use dialog.setOnDismissListener at the following code with the usage of an updated dialog code.

    private void ShowDialog() {      
                View view = LayoutInflater.from(ActivityMain.this).inflate(R.layout.dialog, null);
                dialog = new Dialog(ActivityMain.this);
                dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
                dialog.setCancelable(true);
                dialog.setCanceledOnTouchOutside(true);
                dialog.addContentView(view, new RelativeLayout.LayoutParams(
                            WindowManager.LayoutParams.WRAP_CONTENT,
                            WindowManager.LayoutParams.WRAP_CONTENT));
                Button dialogBtn = (Button) dialog.findViewById(R.id.button);
                dialogBtn.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        dialog.dismiss();                
                    }
                });
                dialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
                    @Override
                    public void onDismiss(final DialogInterface arg) {
                        //when dialog closed
                    }
                });
    
        }
    

提交回复
热议问题