Table of Contents
AlertDialog 에서 Toast 표시하기
AlertDialog 는 버튼 클릭시 무조건 창을 닫도록 되어 있다.
따라서, DialogInterface.OnClickListener 를 사용하는 대신,
View.OnClickListener 이벤트를 잡아서,
체크 및 Toast 를 표시하는 방법을 사용해야 한다.
builder.setPositiveButton(R.string.ok,
(dialog, which) -> {
// do nothing
});
builder.setNegativeButton(R.string.cancel,
(dialog, id) -> dialog.cancel());
AlertDialog alertDialog = builder.create();
alertDialog.show();
// DialogInterface.OnClickListener 대신 View.OnClickListener 사용
alertDialog.getButton(Dialog.BUTTON_POSITIVE).setOnClickListener(
v -> {
if (binding.edittextFolderName.getText().toString().equals("")) {
Toast myToast = Toast.makeText(context, R.string.folder_name_need, Toast.LENGTH_SHORT);
myToast.show();
return;
}
// do something
alertDialog.cancel();
});