如何禁用searchview?

The*_*mit 5 android searchview

你可以帮助我按下按钮时如何禁用searchview吗?我正在尝试这段代码:

searchView.setEnabled(false);
                searchView.setFocusableInTouchMode(false);
                searchView.clearFocus();
Run Code Online (Sandbox Code Playgroud)

但它似乎无法正常工作.我仍然可以在searchview中输入文字.

谢谢.. :))

小智 8

您可以使用:

searchView.clearFocus();
Run Code Online (Sandbox Code Playgroud)

如果你想隐藏它使用:

searchView.setVisibility(View.GONE);
Run Code Online (Sandbox Code Playgroud)


Cuo*_*yen 8

以上所有问题对我都不起作用.Becase SearchView是一个ViewGroup,所以我们必须禁用它的所有子视图.

private void enableSearchView(View view, boolean enabled) {
    view.setEnabled(enabled);
    if (view instanceof ViewGroup) {
        ViewGroup viewGroup = (ViewGroup) view;
        for (int i = 0; i < viewGroup.getChildCount(); i++) {
            View child = viewGroup.getChildAt(i);
            enableSearchView(child, enabled);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在其他地方,请致电:

enableSearchView(searchView, true/false);
Run Code Online (Sandbox Code Playgroud)