您的位置:首页 > 移动开发 > Android开发

android设置软键盘的回车按钮为搜索键

2017-02-26 17:47 661 查看
很多时候,我们需要写出一个搜索的栏,点击打开软键盘,当我们使用软键盘上的回车按键进行搜索的时候,会给用户带来良好的体验,因此今天我们就来学习一下,

1.首先,写一个输入框EditText:

<EditText

android:id="@+id/activity_blog_infomation_et"
android:layout_width="260dp"
android:layout_height="30dp"
android:layout_gravity="center"
android:paddingLeft="2dp"
>


2.然后在activity中进行动态设置(本来是在xml中进行设置的,后来发现不好用):

//设置键盘搜索按钮
seekEt.setInputType(EditorInfo.TYPE_CLASS_TEXT);
seekEt.setImeOptions(EditorInfo.IME_ACTION_SEARCH);
seekEt.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER) {
// 先隐藏键盘
//                    ((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(BlogInfomationActivity
//                            .this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
//进行搜索操作的方法,在该方法中可以加入mEditSearchUser的非空判断
search();
}
return false;
}
});


3.最后在清单文件中这个activity中: 设置android:windowSoftInputMode=”adjustPan”,activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。

<activity
android:name=".home.blogInfomation.BlogInfomationActivity"
android:windowSoftInputMode="adjustPan"
android:configChanges="keyboardHidden|orientation"
android:screenOrientation="portrait" />


4.效果图如下:



5.当然我们可以设置别的样式:

EditorInfo.IME_ACTION_GO: Go
EditorInfo.IME_ACTION_SEARCH: 放大镜
EditorInfo.IME_ACTION_SEND: Send
EditorInfo.IME_ACTION_NEXT: Next
EditorInfo.IME_ACTION_DONE: Done,回车键,按下后光标到下一行,确定/完成,隐藏软键盘,即使不是最后一个文本输入框


本人菜鸟一个,有什么不对的地方,希望大家指出评论,大神勿喷,希望大家一起学习进步!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 搜索 软键盘