我正在创建一个带有自定义布局的警告对话框,我想在按下其中一个布局按钮时取消该对话框。
LayoutInflater layoutInflater = LayoutInflater.from(GroupAdminOptions.this);
View alertView = layoutInflater.inflate(R.layout.change_group_name, null);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(GroupAdminOptions.
this);
final EditText userInput = (EditText) alertView.findViewById(R.id.editTextUserInput);
Button okButton = (Button) alertView.findViewById(R.id.okButton);
Button cancelButton = (Button) alertView.findViewById(R.id.cancelButton);
okButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("QQQ","" + userInput.getText());
}
});
cancelButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("QQQ","cancel");
}
});
alertDialogBuilder.setView(alertView);
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
当我按下取消按钮时,可以取消 alertDialog 吗?
最佳答案
您必须将 AlertDialog
设置为全局变量,然后您可以在 onClick()
方法中使用 AlertDialog
然后关闭它。
在将 alertDialog 声明为全局变量后尝试此代码。
cancelButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("QQQ","cancel");
alertDialog.dismiss();
}
});
希望对您有所帮助!
关于Android取消具有自定义布局的alertDialog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32274885/