Android searchview隐藏键盘但不失去焦点

标签 android android-layout android-fragments

我有一台集成了 Android 和条形码扫描仪的 PDA。我会始终隐藏键盘以使用条形码扫描仪。我有一个带有 editetext 字段的 searchview ,可以通过我的应用程序搜索我的产品。我需要关闭键盘,但我并没有失去对搜索字段的关注。有什么办法可以实现这个功能吗?

我正在使用 searchView.clearFocus() 但我失去了焦点

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu_home, menu);
    SearchManager manager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    SearchView searchView = (SearchView) menu.findItem(R.id.search).getActionView();
    searchView.setSearchableInfo(manager.getSearchableInfo(getComponentName())); searchView.setIconified(false);
    searchView.setSubmitButtonEnabled(true);
    searchView.clearFocus();
    return true;
}

最佳答案

public static void hideSoftKeyboard(Activity activity) {
   InputMethodManager inputMethodManager = (InputMethodManager)  activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
   inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(), 0);
}

这个方法一般都有效。如果这会失去焦点,我会感到非常惊讶,它只是获得当前焦点。

关于Android searchview隐藏键盘但不失去焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30052766/

相关文章:

android - 如何更改 fragment 的大小?

android - ListFragment - 如何添加菜单?

Android禁用navigationDrawer透明

android - 异常无效限制条款 - Android

Android:测试用例有没有命名规则

java - 无法在 getInstance() 中传递 Context

android - 使 imageview 调整大小以适合其容器

android - 呈现问题无法找到以下类 - android.support.v7.widget.AppCompatTextView

对话框中的 Android Maps API v2

android - 在 Android 2.2 中使用 fragment