0
我被卡住了一个很奇怪的问题。我在对话框中有一个editText。如果我一次打开对话框(点击ListView的一个元素)并做一些事情都可以。如果我下次打开对话框(点击ListView的另一个元素),editText将显示第一次相同的值。EditText显示错误的文字
toast(profilesList.get(toEdit).get(NAME).toString()); //toast say Bob
et_profileName.setText(profilesList.get(toEdit).get(NAME).toString()); //I see Alice
另一个奇怪的事情是:如果我旋转显示屏,文本会在“BobAlice”中更改。如果我关闭对话框,然后重新打开对话框,一切正常,对话框显示正确的字符串。
有什么建议吗?
编辑: et_profileName是在单击ListView中的项目时打开的对话框。
更多代码:
protected Dialog onCreateDialog(int id) {
dialog = new Dialog(this);
...
et_profileName= (EditText)dialog.findViewById(R.id.et_profileName);
...
}
这是当我打电话对话:
showDialog(DIALOG_EDIT_PROFILE);
toast(profilesList.get(toEdit).get(NAME).toString());
et_profileName.setText(profilesList.get(toEdit).get(NAME).toString());
另外,如果我把
et_profileName= (EditText)dialog.findViewById(R.id.et_profileName);
的et_profileName.setText前不工作( ...)
也许et_profileName引用第一个EditText – Rodrigo
是ListView中的EditText,还是它在对话框中,当您单击ListView中的项目时打开 – Noel
我的建议是添加更多代码。 –