实现android按下回车键便隐藏输入键盘,有两种方法:

1.)如果布局是多个EditText,为每个EditText控件设置android:singleLine=”true”,弹出的软盘输入法中回车键为next,直到最后一个获取焦点后显示为Done,点击Done后,软盘输入键盘便隐藏。或者将EditText的imeOptions属性设置android:imeOptions=”actionDone”,则不管是不是最后一个EditText,点击回车键即隐藏输入法。

2.)监听Enter的事件,编写Enter的事件响应。设置文本框的OnKeyListener,当keyCode ==KeyEvent.KEYCODE_ENTER的时候,表明Enter键被按下,就可以编写自己事件响应功能了。

点击下载源码

具体代码:

view plain copy to clipboard print ?
  1. packagelistenter.main;
  2. importandroid.app.Activity;
  3. importandroid.content.Context;
  4. importandroid.os.Bundle;
  5. importandroid.view.KeyEvent;
  6. importandroid.view.View;
  7. importandroid.view.View.OnKeyListener;
  8. importandroid.view.inputmethod.InputMethodManager;
  9. importandroid.widget.EditText;
  10. publicclassEnterListenterextendsActivity{
  11. /**Calledwhentheactivityisfirstcreated.*/
  12. @Override
  13. publicvoidonCreate(BundlesavedInstanceState){
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.main);
  16. EditTextpassword=(EditText)findViewById(R.id.password);
  17. password.setOnKeyListener(onKey);
  18. }
  19. OnKeyListeneronKey=newOnKeyListener(){
  20. @Override
  21. publicbooleanonKey(Viewv,intkeyCode,KeyEventevent){
  22. //TODOAuto-generatedmethodstub
  23. if(keyCode==KeyEvent.KEYCODE_ENTER){
  24. InputMethodManagerimm=(InputMethodManager)v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
  25. if(imm.isActive()){
  26. imm.hideSoftInputFromWindow(v.getApplicationWindowToken(),0);
  27. }
  28. returntrue;
  29. }
  30. returnfalse;
  31. }
  32. };
  33. }

图-1 点击回车键隐藏键盘

PS:

把EditText的Ime Options属性设置成不同的值,Enter键上可以显示不同的文字或图案
actionNone : 回车键,按下后光标到下一行
actionGo : Go,
actionSearch : 一个放大镜
actionSend : Send
actionNext : Next
actionDone : Done,隐藏软键盘,即使不是最后一个文本输入框

更多相关文章

  1. android 回车键事件编程
  2. AndroidStudio 开发自我小结(1)
  3. 关于android studio开发APP中,给单个Activity设置隐藏上面标题栏
  4. android:imeOptions指定了弹出键盘时右下角的按键的显示文字
  5. android EditText中inputType的属性列表
  6. android inputType属性
  7. android EditText中inputType的属性列表
  8. Android(安卓)中导航栏文字居中
  9. EditText 报出 “This text field does not specify an inputTyp

随机推荐

  1. Android开机启动Service
  2. Android之EditText 属性汇总
  3. android初始化部分:how to java2Cpp
  4. Android之加载圈
  5. 高手速成android开源项目【项目篇】
  6. android service 学习(上)
  7. Android(安卓)ContentProvider(内容提供
  8. Android基本界面控件
  9. [置顶] Big Planet Tracks 一个不错的 An
  10. android 硬件加速后webview闪烁问题