我在保存驻留在 edittext
中的字符串值时遇到问题。
发生的事情是,对话框
显示带有edittext
的确定按钮和取消按钮。
当按下确定 按钮
时,我想要发生的是 bar
变量从编辑文本
。
public void dialog(){
final Dialog dialog = new Dialog(myClass.this);
dialog.setContentView(R.layout.mydialog);
dialog.setTitle("I'm soo smart. S-M-R-T. Smart.");
dialog.setCancelable(true);
dialog.show();
Button okButton = (Button) dialog.findViewById(R.id.dialog_OK_BUTTON);
okButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
try{
LayoutInflater factory = LayoutInflater.from(Inloggning.this);
final View textEntryView = factory.inflate(R.layout.myDialog, null);
final EditText barText= (EditText) textEntryView.findViewById(R.id.dialog_FOO);
// this gets returned empty.
bar= barText.getText().toString();
System.out.println("foo: "+bar);
//call();
dialog.hide();
}
catch(Exception e){
// do whatever nessesary.
}
}
});
Button cancelButton = (Button) dialog.findViewById(R.id.dialogbtn_cancel);
cancelButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
dialog.dismiss();
}
});
}
有人可以阐明这一点吗?
编辑:这是示例代码。实际代码在变量上没有重复名称。
第二次编辑:删除重复项..
最佳答案
检查 barText
是否为 null。
如果从 onClick
监听器中声明它会发生什么情况?
也许改变:
final EditText barText= (EditText) textEntryView.findViewById(R.id.dialog_FOO);
到:
final EditText barText= (EditText) dialog.findViewById(R.id.dialog_FOO);
关于java - Android 对话框和 edittext 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7147454/