android – 禁用SearchView

前端之家收集整理的这篇文章主要介绍了android – 禁用SearchView前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试从我的Activity中禁用SearchView.我尝试了以下代码
mSearchView.setEnabled(false);
    mSearchView.setFocusable(false);
    mSearchView.setClickable(false);

但它不起作用.仍然可以单击SearchView并弹出KeyBoard.我希望它变得灰暗,不可点燃.我怎么能做到这一点?

解决方法

所述答案都不足以满足我的需求,所以我想为同样情况下的任何人提供另一个答案.

SearchView由不同的视图组成,可以 – 并且在这种情况下必须 – 单独处理.
如果你希望你的SearchView(支持v7)在这样的状态下冻结和灰显,不回答任何类型的输入,包括搜索和清除按钮,你可以使用:

ImageView clearButton = (ImageView) searchView.findViewById(android.support.v7.appcompat.R.id.search_close_btn);
SearchView.SearchAutoComplete searchEditText = (SearchView.SearchAutoComplete) searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text);

clearButton.setEnabled(false);
searchEditText.setEnabled(false);
searchView.setSubmitButtonEnabled(false);

(此外,我遇到了deeptis回答searchView.setInputType(InputType.TYPE_NULL)的问题:如果以这种方式禁用SearchView并在之后单击它,系统似乎期望打开键盘,但键盘显示.因此,第一个后退按钮单击只会导致关闭 – 未显示或实际上未打开 – 键盘.)

猜你在找的Android相关文章