记录一下如何把软键盘的回车按键变成搜索按键
这个估计大部分人也经常用的到
这个直接xml文件设置 EditText 三个属性
android:imeOptions="actionSearch"
android:singleLine="true"
android:maxLines="1"
网上有些直接用 android:imeOptions="actionSearch"
这样是不够的 而 android:maxLines="1"这个是为了防止点击回车键换行,我个人认为也是有必要的
<EditText
android:id="@+id/search_input"
android:background="#00000000"
android:layout_width="30dp"
android:layout_height="match_parent"
android:ellipsize="end"
android:hint="搜索"
android:imeOptions="actionSearch"
android:singleLine="true"
android:maxLines="1"
android:textSize="15sp" />
然后需要监听软键盘的搜索然后
EditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
//点击搜索的时候隐藏软键盘
hideKeyboard(EditText);
// 在这里写搜索的操作,一般都是网络请求数据
return true;
}
return false;
}
});
/**
* 隐藏软键盘
* @param context :上下文
* @param view :一般为EditText
*/
public void hideKeyboard(View view) {
InputMethodManager manager = (InputMethodManager) view.getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
manager.hideSoftInputFromWindow(view.getWindowToken(), 0);
}