Here is my code for the dialogue, I want to disable the positive button if the text size in the text editor is more than 5 and enable it if size <= 5
private void myDialog(String title) { AlertDialog.Builder builder = new AlertDialog.Builder(context); // Get the layout inflater LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View dialogView = inflater.inflate(R.layout.new_dialog, null); // Inflate and set the layout for the dialog // Pass null as the parent view because its going in the dialog layout builder.setView(dialogView); final EditText dialogEdittext = (EditText) dialogView.findViewById(R.id.dialog_editText); final TextView dialogMessage = (TextView) dialogView.findViewById(R.id.dialog_limit); dialogEdittext.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void afterTextChanged(Editable s) { // if text length is greater than 5 disable positive button // else enable } }); builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int id) { }); builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int id) { } }); final Dialog dialog = builder.create(); dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); dialog.show(); }
source share