SearchView 的 onClose 侦听器从不运行

SearchView's onClose listener never runs

得到一个SearchView(androidx,不支持lib)

我添加了合适的监听器,例如:

@Override
    public boolean onQueryTextSubmit(String query) {
       Toaster.show(this, "onQueryTextSubmit!");
        return true;
    }

    @Override
    public boolean onQueryTextChange(String query) {
       Toaster.show(this, "onQueryTextChange!");
        return true;
    }

    @Override
    public boolean onClose() {
       Toaster.show(this, "onClose!");
       return true;
}

onQueryTextSubmitonQueryTextChange 都很好。但是,当我单击 SearchView 右侧的小 X 时,搜索视图确实被清除,但 onClose 侦听器从未运行。

在官方文档中,关于 setOnCloseListener 的内容如下:

"Sets a listener to inform when the user closes the SearchView."

我觉得我用得好,但没有触发。

有什么想法吗?

结束:

   View searchViewsCloseBtn = searchView.findViewById(R.id.search_close_btn);
        searchViewsCloseBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
              Toaster.show(myContext, "I hate this platform.");
            }
        });

"R.id.search_close_btn" 是对 SearchView 的关闭按钮的实际引用。

如果您手动设置 onClickListener,它会起作用。