我是Eclipse的新手,我必须通过在软键盘中按下完成按钮后清除editText中的焦点来隐藏光标.
我发现此代码适用于其他人:
editText.setonEditorActionListener(new OnEditorActionListener() { @OverrIDepublic boolean onEditorAction(TextVIEw v, int actionID, KeyEvent event) { if(actionID==EditorInfo.IME_ACTION_DONE){ //Clear focus here from edittext editText.clearFocus(); }return false;}});
活动的代码
package com.iprogettisti.cppp;import androID.os.Bundle;import androID.support.v4.app.Fragment;import androID.support.v7.app.ActionBaractivity;import androID.vIEw.KeyEvent;import androID.vIEw.LayoutInflater;import androID.vIEw.Menu;import androID.vIEw.MenuItem;import androID.vIEw.VIEw;import androID.vIEw.VIEwGroup;import androID.vIEw.inputmethod.EditorInfo;import androID.Widget.EditText;import androID.Widget.TextVIEw;import androID.Widget.TextVIEw.OnEditorActionListener;public class VisualizzaPagina extends ActionBaractivity {EditText edittext = (EditText) findVIEwByID(R.ID.editText1);@OverrIDeprotected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (MainActivity.TipoPagina == 1) { setContentVIEw(R.layout.fragment_visualizza_pagina); } else if (MainActivity.TipoPagina == 2) { setContentVIEw(R.layout.fragment_visualizza_pagina2); } else if (MainActivity.TipoPagina == 3) { setContentVIEw(R.layout.fragment_visualizza_pagina3); } else if (MainActivity.TipoPagina == 4) { setContentVIEw(R.layout.fragment_visualizza_pagina4); } else if (MainActivity.TipoPagina == 5) { setContentVIEw(R.layout.fragment_visualizza_pagina5); } edittext.setonEditorActionListener(new OnEditorActionListener() { @OverrIDe public boolean onEditorAction(TextVIEw v, int actionID, KeyEvent event) { if(actionID==EditorInfo.IME_ACTION_DONE){ //Clear focus here from edittext edittext.setCursorVisible(false); } return false; } });}@OverrIDepublic boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.visualizza_pagina, menu); return true;}@OverrIDepublic boolean onoptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroIDManifest.xml. int ID = item.getItemID(); if (ID == R.ID.action_settings) { return true; } return super.onoptionsItemSelected(item);}/** * A placeholder fragment containing a simple vIEw. */public static class PlaceholderFragment extends Fragment { public PlaceholderFragment() { } @OverrIDe public VIEw onCreateVIEw(LayoutInflater inflater, VIEwGroup container, Bundle savedInstanceState) { VIEw rootVIEw = inflater.inflate( R.layout.fragment_visualizza_pagina, container, false); return rootVIEw; }}}
但我无法弄清楚如何得到这项工作.
我应该在哪里放置该代码?并且在第一行“editText”中给我一个错误,因为没有重新调整,我试图给出我的edittext的唯一ID,但它没有用.
解决方法:
试试这个
EditText edittext = (EditText) findVIEwByID(R.ID.edittext1<your unique ID>); edittext.setonEditorActionListener(new OnEditorActionListener() { @OverrIDe public boolean onEditorAction(TextVIEw v, int actionID, KeyEvent event) { if(actionID==EditorInfo.IME_ACTION_DONE){ //Clear focus here from edittext edittext.setCursorVisible(false); } return false; } }); edittext.setontouchListener(new OntouchListener() { @OverrIDe public boolean ontouch(VIEw arg0, MotionEvent arg1) { edittext.setCursorVisible(true); return false; } });
总结 以上是内存溢出为你收集整理的java – Eclipse editText在按下完成后删除焦点(光标)全部内容,希望文章能够帮你解决java – Eclipse editText在按下完成后删除焦点(光标)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)