为什么不使用setText(“”)? EditText存储最后的输入数据,当我再次调用AlertDialog时,显示存储的数据。
case IDD_SET_NAME:
builder=new AlertDialog.Builder(this);
builder.setTitle("Name Title");
EditText input = new EditText(this);
input.setText("");//This method not work
builder.setView(input);
builder.setPositiveButton("Create", onClickListener_DialogResetPin);
builder.setNeutralButton("Cancel", onClickListener_DialogResetPin);
// create and show dialog
dialog = builder.create();
dialog.show();
Button btnOK = dialog.getButton(AlertDialog.BUTTON_POSITIVE);
btnOK.setOnClickListener(onClickListener_btnOK);
break;
答案 0 :(得分:0)
如果您Dialog
dismiss
,则input.setText("");
不会被销毁。因此,如果再次显示,则不会重新创建,dialog
将无法运行。如果您想要重新创建removeDialog()
,请使用dismissDialog()
代替{{1}}
答案 1 :(得分:0)
你在onCreateDialog。这是第一次显示对话框时调用的。如果您要对警报执行修改,则应在onPrepareDialog中执行此操作。
一些调试和文档阅读会帮助你。