我是一名长期,自学成才的业余VB程序员,现在正在尝试自学@L_301_0@和Android.我这样说,所以你会知道我不会说好语言,而且对这两种追求都是非常新的.
我开发了一个AndroID表单,其中包含一系列EditText框,每个框的内容都要在用户填写后保存到数组中.如果用户按下Enter键,我已经想出了如何做到这一点.但是,人们实际上并没有这样做:他们点击框,键入,然后单击下一个元素.
我VB,我可以为lostfocus事件编写代码.但我在Java中找不到类似的方法.
最后一个问题:是否有一种方法可以捕获EditText失去焦点的时间,因此我可以在不依赖Enter键的情况下保存该类型的类型数据?
public boolean onKey(VIEw v, int keyCode, KeyEvent event) { if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)){ Editable wasted=edittext_asset.getText(); vehdata[vehNo][Integer.parseInt((String) edittext_asset.getTag())]=wasted.toString(); return true; } return false; }
请记住,我对此很新,我常常不确定在哪里放置代码片段以使它们工作(新文件?oncreate方法?谁知道).您可以给予我任何指导,我将非常感激和永远感激.
解决方法:
我刚刚做了类似的事情.我通过创建一个for循环来处理它,它只是通过ID获取每个edittext的内容并将它的文本添加到数组中.我在onclick方法中做了这个,因为我在用户点击按钮后完成了所有 *** 作.
String ohhai;String duh = et.getText().toString();int number = Integer.parseInt(duh);List<String> myCollection=new ArrayList<String>();EditText stuff;int editt;String loggy;for(int z = 0; z < number; z++){ stuff = (EditText)findVIEwByID(z); editt = stuff.getID(); loggy = Integer.toString(editt); Log.e("How Many", loggy); ohhai = stuff.getText().toString(); myCollection.add(ohhai);}String [] arr = myCollection.toArray(new String[myCollection.size()]);String separator = "0";StringBuffer result = new StringBuffer();if (arr.length > 0) result.append(arr[0]);for (int h=1; h < arr.length; h++) { result.append(separator); result.append(arr[h]);}
总结 以上是内存溢出为你收集整理的java – 捕获EditText丢失焦点全部内容,希望文章能够帮你解决java – 捕获EditText丢失焦点所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)