这是一个弹出按钮,如果用户点击提交而不先输入输入,则需要禁用该按钮:
new AlertDialog.Builder(getActivity())
.setView(view)
.setPositiveButton(android.R.string.ok,
new DialogInterface.OnClickListener() {
@Override
public void onClick(final DialogInterface dialog,
final int which) {
EditText nameEditText = (EditText) view
.findViewById(
R.id.save_search_dialog_name);
postToBus(new SaveSearchEvent(
nameEditText.getText().toString(),
search));
postToBus(new GoogleAnalyticEvent(
GA.CATEGORY_SEARCH_CONTROL,
GA.EVENT_SEARCH_SAVE_SEARCH));
dialog.dismiss();
}
//check to see if dialog is empty
private boolean isEmpty(EditText etText) {
return etText.getText().toString().trim().length() == 0;
}
}
我正在尝试创建一个方法,该方法将检查以确保我的弹出对话框不能为空。我试过一个方法isEmpty,但不确定如何使用它,或者甚至可能不是正确的方法?任何帮助将不胜感激。
答案 0 :(得分:2)
你能提供上下文吗?你有一个应该启用/禁用的按钮吗?在这种情况下,我建议使用这个:
EditText editText = (EditText)findViewById(R.id.your_edit_text_id);
editText.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(TextUtils.isEmpty(s)) { // check whatever you want
// Disable button or something
} else {
// Enable
}
}
});