Java 对话框中的EditText.setText(";)不断使应用程序崩溃
我在编写我的应用程序时遇到了以下问题: 只要语句Java 对话框中的EditText.setText(";)不断使应用程序崩溃,java,android,android-edittext,android-dialog,Java,Android,Android Edittext,Android Dialog,我在编写我的应用程序时遇到了以下问题: 只要语句Txtname.setText(name)未被抑制,应用程序就会不断崩溃。即使我硬编码字符串,它也会崩溃。通过toast,我可以看到字符串名称的传递是正确的 //OnListpress listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(Ada
Txtname.setText(name)
未被抑制,应用程序就会不断崩溃。即使我硬编码字符串,它也会崩溃。通过toast,我可以看到字符串名称的传递是正确的
//OnListpress
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int i, long l) {
Log.d(TAG, "onItemClick: name:" + thelist.get(i));
String name = thelist.get(i);
Showpopup(name);
}
//PopUP
private void Showpopup(final String name) {
myDialog = new Dialog(getActivity());
myDialog.setContentView(R.layout.popup_list);
myDialog.show();
EditText Txtname = getActivity().findViewById(R.id.TxtNAME);
Txtname.setText(name);
Toast.makeText(getActivity(),name,Toast.LENGTH_LONG).show();
}
});
//OnListpress
setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父视图、视图视图、int i、long l){
Log.d(标记“onItemClick:name:”+thelist.get(i));
String name=thelist.get(i);
Showpopup(名称);
}
//弹出窗口
私有void Showpopup(最终字符串名称){
myDialog=新建对话框(getActivity());
myDialog.setContentView(R.layout.popup_列表);
myDialog.show();
EditText Txtname=getActivity().findViewById(R.id.Txtname);
Txtname.setText(名称);
Toast.makeText(getActivity(),name,Toast.LENGTH_LONG).show();
}
});
我发现了一些关于这个问题的主题,但是他们总是使用片段作为编辑文本的基础。我的是一个对话,呈现的方式似乎不适合我。
我希望有人知道修复方法,提前谢谢 制作您的:
EditText Txtname变量全局…,即。全局声明它,然后像这样调用它:
Txtname=..您的
findViewById()
找不到id为R.id.Txtname
的EditText
,因为您做错了什么。那EditText
应该在哪里?如果在对话中,那么你需要以其他方式找到它。这正是我想要做的。。。你知道为什么这样不行吗?我可以/应该做什么呢?我对你的建议的理解与你下面的建议相同。。。。如果是这样的话,我已经试过了,但没有成功。