Android searchView 明文按钮监听器

Android searchView clear text button listener

如何将侦听器设置为 searchView 中的 'clear text' 按钮(不关闭)。不,onQueryTextChange 设置为空并不能解决我的问题。

问候

尝试从 SearchView 获取 clearButton 并设置 OnClickListener 如下:

ImageView clearButton = searchView.findViewById(androidx.appcompat.R.id.search_close_btn);
clearButton.setOnClickListener(v -> {
    if(searchView.getQuery().length() == 0) {
        searchView.setIconified(true);
    } else {

        // Do your task here
        searchView.setQuery("", false);
    }
});

如果你得到一个是 TextInputLayout,id 为 'searchInput',那么只需:

searchInput.setEndIconOnClickListener {
    // Do something
}

(如果找不到,可能需要更新库)

文档:https://developer.android.com/reference/com/google/android/material/textfield/TextInputLayout#setEndIconOnClickListener(android.view.View.OnClickListener)