我有一个带有我自己标记的对话框:
@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()方法无法正常工作。
答案 0 :(得分:1)
this.dismiss();
方法完成是为了活动。 和>> 此<<这是Dialogue的实例(针对你在对话课中的问题)。
如果您想完成Dialogue的活动,则需要将活动实例传递给对话类。