androider
androider

Reputation: 465

How to get a text from SearchView?

I need to get a text from SearchView and compare it to strings in my activity's ListView and show a Toast if the word in a SearchView is in my ListView. How do I do that? Here's my working code for the SearchView:

MenuItem ourSearchItem = menu.findItem(R.id.menu_item_search);
    
SearchView sv = (SearchView) ourSearchItem.getActionView();
    
sv.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
    @Override
    public boolean onQueryTextSubmit(String query) {
        return false;
    }
    
    @Override
    public boolean onQueryTextChange(String newText) {
        adapter.getFilter().filter(newText);
                    
        return false;
    }
});

Upvotes: 31

Views: 33736

Answers (2)

starkshang
starkshang

Reputation: 8528

To get text of SearchView, use searchView.getQuery().

Upvotes: 65

Saber Elharti
Saber Elharti

Reputation: 91

try this code :

    MenuItem ourSearchItem = menu.findItem(R.id.menu_item_search);

    SearchView sv = (SearchView) ourSearchItem.getActionView();

    sv.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            Toast.makeText(getContext(), query, Toast.LENGTH_SHORT).show();
            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {

            adapter.getFilter().filter(newText);
            }
            return false;
        }
    });

Upvotes: 7

Related Questions