Android 搜索 把软键盘上的回车键改为搜索

前言:

项目中需要自定义一个搜做的功能,但是我通过更具UI的显示,完全没法使用V7包下的SearchView控件,于是我使用EditView自己写的。

具体实现如下:

  • 修改Editview属性:

    android:imeOptions="actionSearch"

    在该Editview获得焦点的时候将“回车”键改为“搜索”

    android:singleLine=”true”

    不然回车【搜索】会换行。

  • EditView编写监听按下控件监听,监听确认键的按下

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    etSearchstr.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(GoodsListActivity.this.getCurrentFocus()
    .getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
    //进行搜索操作的方法,在该方法中可以加入mEditSearchUser的非空判断
    refresh.autoRefresh();
    }
    return false;
    }
    }