Android工具栏SearchView自动打开键盘

时间:2016-04-25 21:03:14

标签: android keyboard android-softkeyboard

我有一个奇怪的问题。在我的MainActivity工具栏中,我有一个动作搜索,这就是我使用它的方式:

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        MenuItem searchItem = menu.findItem(R.id.search);
        SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
        searchView.setOnQueryTextListener(this);

        SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
        searchView.setSearchableInfo(searchManager.getSearchableInfo(
                new ComponentName(this, SearchableActivity.class)));
        searchView.setIconified(false);

        return true;
    }

但问题在于,当我的应用程序启动时,键盘会弹出,甚至在我单击工具栏中的搜索按钮之前。我试图强制键盘隐藏在清单中,我将其添加到我的MainActivity:

android:windowSoftInputMode="stateAlwaysHidden"

我甚至试过这个:

android:windowSoftInputMode="stateHidden"

但他们的键盘仍然弹出。我没有任何EditText或任何我在MainActivity中只有图像和FAB的东西。

1 个答案:

答案 0 :(得分:6)

1)android:windowSoftInputMode =" adjustPan | stateHidden"

2)getWindow()。setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

3)mSearchView.clearFocus();