如何指定关闭对话框的按钮?

时间:2017-05-16 17:58:22

标签: android xml dialog alertdialog

我有一个带有我自己标记的对话框:

@Override
protected Dialog onCreateDialog(int id) {
    AlertDialog.Builder adb = new AlertDialog.Builder(this);
    LayoutInflater inflater = this.getLayoutInflater();
    View view = inflater.inflate(R.layout.dialog_menu, null);
    title = (TextView) view.findViewById(R.id.title);
    text = (TextView) view.findViewById(R.id.textMenu);
    btnOk = (Button) view.findViewById(R.id.btnOk);
    btnCancel = (Button) view.findViewById(R.id.btnCancel);
    title.setText(R.string.end_game);
    text.setText(R.string.end_text);
    btnOk.setText(R.string.btnOk);
    btnOk.setOnClickListener(this);
    btnCancel.setText(R.string.btnCancel);
    btnCancel.setOnClickListener(this);
    if (id == DIALOG_EXIT) {
        title.setText(R.string.main_menu);
        text.setText(R.string.menu_text);
        adb.setView(view);
        return adb.create();
    }
    if (id == DIALOG_END){
        title.setText(R.string.end_game);
        text.setText(R.string.end_text);
        adb.setView(view);
        return adb.create();
    }
    return super.onCreateDialog(id);
}

单击“btnCancel”按钮后如何关闭对话框?在这种情况下,finish()方法无法正常工作。

1 个答案:

答案 0 :(得分:1)

this.dismiss();

方法完成是为了活动。 和>> <<这是Dialogue的实例(针对你在对话课中的问题)。

如果您想完成Dialogue的活动,则需要将活动实例传递给对话类。