Android在addTextChangedListener(editext)的某些条件下禁用正按钮 [英] Android disable positive button on some condion in addTextChangedListener (editext)
本文介绍了Android在addTextChangedListener(editext)的某些条件下禁用正按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是我的对话框的代码,如果文本中的文本大小超过5,我想禁用正面按钮,如果大小< = 5
Here is my code for a dialog, I want to disable positive button if text size in edit-text in greater 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();
}
推荐答案
像这样:
@Override
public void afterTextChanged(Editable s) {
if (s.length() > 5) {
dialog.getButton(Dialog.BUTTON_POSITIVE).setEnabled(false);
} else {
dialog.getButton(Dialog.BUTTON_POSITIVE).setEnabled(true);
}
}
其中对话框
是:
final AlertDialog dialog = builder.create();
这篇关于Android在addTextChangedListener(editext)的某些条件下禁用正按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文