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

我们需要这样做以禁止用户输入空值作为文件名。除非 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();

}


慕田峪4524236
浏览 108回答 2
2回答

噜噜哒

我们需要这样做以禁止用户输入空值作为文件名。除非 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();}

一只萌萌小番薯

添加一个TextChangedListener到编辑文本。通过用户输入启用或禁用按钮。dialog.getButton(AlertDialog.BUTTON1).setEnabled(false);您可以像和一样访问肯定按钮
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java