为了账号安全,请及时绑定邮箱和手机立即绑定

除非输入字段不为空,否则禁用 AlertDialog 上的保存按钮

除非输入字段不为空,否则禁用 AlertDialog 上的保存按钮

慕田峪4524236 2023-03-23 15:36:12
我们需要这样做以禁止用户输入空值作为文件名。除非 userInput 不为空,否则应禁用保存按钮。这是当前代码:public void openDialog() {    @SuppressLint("InflateParams") View view = (LayoutInflater.from(AudioRecorder.this)).inflate(R.layout.audio_name_input, null);    AlertDialog.Builder alertBuilder = new AlertDialog.Builder(AudioRecorder.this);    alertBuilder.setView(view);    final EditText userInput = view.findViewById(R.id.userInput);    alertBuilder.setCancelable(true);    alertBuilder.setPositiveButton("Save", new DialogInterface.OnClickListener() {        @Override        public void onClick(DialogInterface dialog, int which) {            inputName = String.valueOf(userInput.getText());            Toast.makeText(AudioRecorder.this, "Next audio clip will be named... " + inputName, Toast.LENGTH_SHORT).show();            filePathMaking();        }    });    alertBuilder.setNegativeButton("cancel", new DialogInterface.OnClickListener() {        @Override        public void onClick(DialogInterface dialogInterface, int i) {        }    });    Dialog dialog = alertBuilder.create();    dialog.show();}
查看完整描述

2 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

我们需要这样做以禁止用户输入空值作为文件名。除非 userInput 不为空,否则应禁用保存按钮。


这是当前代码:


public void openDialog() {

    @SuppressLint("InflateParams") View view = (LayoutInflater.from(AudioRecorder.this)).inflate(R.layout.audio_name_input, null);


    AlertDialog.Builder alertBuilder = new AlertDialog.Builder(AudioRecorder.this);

    alertBuilder.setView(view);

    final EditText userInput = view.findViewById(R.id.userInput);


    alertBuilder.setCancelable(true);

    alertBuilder.setPositiveButton("Save", new DialogInterface.OnClickListener() {

        @Override

        public void onClick(DialogInterface dialog, int which) {

            inputName = String.valueOf(userInput.getText());

            Toast.makeText(AudioRecorder.this, "Next audio clip will be named... " + inputName, Toast.LENGTH_SHORT).show();

            filePathMaking();

        }

    });

    alertBuilder.setNegativeButton("cancel", new DialogInterface.OnClickListener() {

        @Override

        public void onClick(DialogInterface dialogInterface, int i) {

        }

    });


    Dialog dialog = alertBuilder.create();

    dialog.show();

}


查看完整回答
反对 回复 2023-03-23
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

添加一个TextChangedListener到编辑文本。通过用户输入启用或禁用按钮。

dialog.getButton(AlertDialog.BUTTON1).setEnabled(false);您可以像和一样访问肯定按钮


查看完整回答
反对 回复 2023-03-23
  • 2 回答
  • 0 关注
  • 129 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信