Android searchview隐藏键盘但不失焦点

时间:2015-05-05 12:19:20

标签: 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;
}

2 个答案:

答案 0 :(得分:2)

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

这种方法通常有效。如果这会失去焦点,我会非常惊讶,它只是得到当前的焦点。

答案 1 :(得分:0)

将此添加到 Manifest.xml:

<your_activity
        android:windowSoftInputMode="adjustPan|stateHidden">
</your_activity>