【发布时间】:2014-01-01 08:55:58
【问题描述】:
你好,我很想知道这个对话框的问题出在哪里。我正在尝试在edittext. 内创建一个对话框。如果edittext 为空,则必须禁用正button,否则启用。我写了这段代码。
public class Example extends AlertDialog {
AlertDialog.Builder builder;
EditText mEditText;
Context mContext;
Button button;
String text;
protected Example(Context context) {
super(context);
// TODO Auto-generated constructor stub
builder = new AlertDialog.Builder(context);
this.mContext = context;
mEditText = new EditText(mContext);
builder.setView(mEditText);
builder.setPositiveButton("Okay", null);
builder.setNegativeButton("No", null);
mEditText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
AlertDialog dialog = builder.create();
text = mEditText.getText().toString();
if(text.trim().length()>0) {
button = dialog.getButton(AlertDialog.BUTTON_POSITIVE);
if(button != null)
button.setEnabled(true);
else
button = dialog.getButton(AlertDialog.BUTTON_POSITIVE);
button.setEnabled(false);
}
else
button = dialog.getButton(AlertDialog.BUTTON_POSITIVE);
button.setEnabled(false);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged(Editable s) {
}
});
builder.setTitle("Example Dialog");
builder.create();
builder.show();
}
}
当我执行这段代码并在edittext 中写一些东西时,我在button.setEnabled(false); 这一行的if 中的else 中得到NullPointerException 问题出在哪里?
【问题讨论】:
标签: java android xml button android-edittext