我按照以下教程成功地实现了自动完成编辑文本框,并将所有建议显示为项目列表。我想在触摸项目列表时隐藏软键盘,并将该选项传递到编辑文本框。
http://www.claytical.com/blog/android-dynamic-autocompletion-using-google-places-api#comment-form
我尝试过多种选项,但无法取得效果。我该如何实现这个功能并将其应用到应用程序中?
对我来说它是有效的,我只需将
这个:
in.hideSoftInputFromWindow(arg1.getWindowToken(), 0);
替换为:
in.hideSoftInputFromWindow(arg1.getApplicationWindowToken(), 0);
如果你点击自动完成功能中的一个建议并想要隐藏软键盘...你需要在所选的自动完成选项上实现一个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);
}
});
@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);
}
});
- Sajal Mittal