[置顶] Android 搜索 把软键盘上的回车键改为搜索

时间:2021-08-26 00:32:15

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


需求为:

当用户在发现界面内点击搜索按钮,弹出键盘,键盘右下角示意为“搜索”按钮,

当用户输入内容后,点击搜索按钮将进行关键词搜索,当用户没有输入内容点

击搜索按钮,将收起键盘,回到发现界面。


具体实现如下:

   1.修改Editview属性:android:imeOptions="actionSearch"   

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

  android:singleLine="true"     

  不然回车【搜索】会换行

2.mEditSearchUser.setOnKeyListener(new OnKeyListener() {

@Override

public boolean onKey(View v, int keyCode, KeyEvent event) {

  if (keyCode == KeyEvent.KEYCODE_ENTER) {
       // 先隐藏键盘
       ((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
       .hideSoftInputFromWindow(SearchUserActivity.this.getCurrentFocus()
       .getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
      //进行搜索操作的方法,在该方法中可以加入mEditSearchUser的非空判断
       search();
   }
      return false;
     }
  });

3. // 搜索功能

private void search() {

  String searchContext = mEditSearchUser.getText().toString().trim();
      if (TextUtils.isEmpty(searchContext)) {
        TipTools.shortToast(this, "输入框为空,请输入");
         } else {
      // 调用搜索的API方法
       searchUser(searchContext);
     }
   }

具体就是这样了,很简单。赶紧去试试吧!