在触摸自动完成编辑文本建议时隐藏软键盘

Hide SoftKeyboard on touching the autocomplete edittext suggestion

我按照以下教程成功实现了自动完成编辑文本框并将所有建议显示为项目列表。我想在触摸项目列表时隐藏软键盘,并且该选项转到编辑文本框。

http://www.claytical.com/blog/android-dynamic-autocompletion-using-google-places-api#comment-form

我尝试了很多选项,但没有任何效果。我怎样才能做到这一点并在应用程序中实施?

因此,一旦您单击其中一个自动完成建议并且希望隐藏软键盘...您需要在选定的自动完成选项上实现一个 onClickListener,以便在您进行操作时立即隐藏软键盘单击那个之后的选择。

创建 autocompleteTextView

的实例
AutoCompleteTextView text = (AutoCompleteTextView) findViewById(R.id.resource);

实施 onClicklistener 以使用 InputManager 隐藏软键盘。

text.setOnItemClickListener(new OnItemClickListener() {

  @Override
  public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
    InputMethodManager in = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    in.hideSoftInputFromWindow(arg1.getWindowToken(), 0);

  }

});

希望对您有所帮助!!

它对我有用,我刚刚更换了

这个:

in.hideSoftInputFromWindow(arg1.getWindowToken(), 0);

与:

in.hideSoftInputFromWindow(arg1.getApplicationWindowToken(), 0);