Android EditText输入框 软键盘

原创 2013年12月06日 11:00:27

软键盘的Enter键默认显示的是“完成”文本,我们知道按Enter建表示前置工作已经准备完毕了,要去什么什么啦。比如,在一个搜索中,我们输入要搜索的文本,然后按Enter表示要去搜索了,但是默认的Enter键显示的是“完成”文本,看着不太合适,不符合搜索的语义,如果能显示“搜索”两个字或者显示一个表示搜索的图标多好。事实证明我们的想法是合理的,Android也为我们提供的这样的功能。通过设置android:imeOptions来改变默认的“完成”文本。这里举几个常用的常量值:

  1. actionUnspecified  未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED.效果:
  2. actionNone 没有动作,对应常量EditorInfo.IME_ACTION_NONE 效果:
  3. actionGo 去往,对应常量EditorInfo.IME_ACTION_GO 效果:
  4. actionSearch 搜索,对应常量EditorInfo.IME_ACTION_SEARCH 效果: 
  5. actionSend 发送,对应常量EditorInfo.IME_ACTION_SEND 效果:
  6. actionNext 下一个,对应常量EditorInfo.IME_ACTION_NEXT 效果:
  7. actionDone 完成,对应常量EditorInfo.IME_ACTION_DONE 效果:

 private TextView.OnEditorActionListener mWriteListener = 
    new TextView.OnEditorActionListener() { 
    public boolean onEditorAction(TextView view, int actionId, KeyEvent event) { 
        // If the action is a key-up event on the return key, send the message 
        if (actionId == EditorInfo.IME_NULL && event.getAction() == KeyEvent.ACTION_UP) { 
            String message = view.getText().toString(); 
            sendMessage(message); 
        } 
        if(D) Log.i(TAG, "END onEditorAction"); 
        return true; 
    } 
}; 

//隐藏软键盘 

((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);

 //显示软键盘,控件ID可以是EditText,TextView

 ((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).showSoftInput(控件ID, 0);   

 

 

 

 

 

相关文章推荐

解决android软键盘弹出有时会遮住EditText输入框的一种方法

解决该问题的思路:当软键盘弹出时,让当前Activity的最外层布局向上移动一定的距离,让输入框处于可视范围内。 方法: private void addLayoutListener(final ...
  • chzjy
  • chzjy
  • 2017年06月13日 10:12
  • 385

EditText弹出软键盘遮住输入框问题

如果在Activity中的布局的下方有EditText,获取焦点弹出软键盘的时候,如果不做处理,软键盘可能会遮挡输入框,用户提现不好,网上也有很多人提出结局方案,这里就分析一下解决的效果. 需要用到...

安卓学习笔记---解决在在Edittext输入的时候,输入框被软键盘遮挡部分内容的问题(二)

上一篇写了解决的方法,这一篇就说一下我看到的解决软键盘遮挡部分内容的方法,可以测试一下看看 Android软键盘遮藏的四种解决方案 网址: http://www.soso.i...

Android EditText与软键盘的一些效果

主要记录几个常见功能的实现:1、进入页面EditText不自动获取焦点;2、进入页面自动弹出键盘;3、点击其他区域关闭键盘;4、软键盘打开与关闭的工具类EditText不自动获取焦点在外层的父容器上做...

android edittext设置软键盘按钮事件

如图所示我们可以修改软键盘的Enter按钮的样式,可以在代码中监听 按钮点击事件。 package cn.m15.xys; import android.app.A...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android EditText输入框 软键盘
举报原因:
原因补充:

(最多只允许输入30个字)