android-studio
  1. android-studio-searchview

Android Studio SearchView

The Android Studio SearchView provides a search bar for the user interface to search for different types of data. The SearchView is a widget available in Android Studio that is used for searching for specific items or groups of data within an app.

Syntax

The following is the basic syntax for creating a SearchView widget in an Android Studio project:

<androidx.appcompat.widget.SearchView
    android:id="@+id/searchview_id"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:iconifiedByDefault="false"
    android:queryHint="Search Here">
</androidx.appcompat.widget.SearchView>

Example

An example of the SearchView implementation is as follows:

// In MainActivity.java
public class MainActivity extends AppCompatActivity {
    private SearchView searchView;
    private ListView listView;
    private String[] contacts = { "John", "Doe", "Jane", "Doe", "Bob", "Smith"};

    private ArrayAdapter<String> adapter;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        searchView = (SearchView) findViewById(R.id.searchview_id);
        listView = (ListView) findViewById(R.id.listView_id);
        adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,contacts);
        listView.setAdapter(adapter);

        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
            @Override
            public boolean onQueryTextSubmit(String s) {
                return false;
            }

            @Override
            public boolean onQueryTextChange(String s) {
                adapter.getFilter().filter(s);
                return false;
            }
        });
    }
}

Output

After running the code you will be able to see a SearchView widget and a ListView in your activity. You can then search for a specific item or group of data using the SearchView.

SearchView Output Image

Explanation

The XML for a SearchView item includes the following attributes:

  • android:id: Unique ID for the SearchView.
  • android:layout_width: Width of the widget.
  • android:layout_height: Height of the widget.
  • android:iconifiedByDefault: If the SearchView should initially be shown without a query field.
  • android:queryHint: The hint to be displayed for the query field.

The above example code provides a way to filter the ListView using the SearchView as you enter text in it.

Here’s the code for setting up the SearchView widget in the MainActivity:

searchView = (SearchView) findViewById(R.id.searchview_id); // Get the reference of SearchView
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {  // Set TextChangeListner to get query entered
    @Override
    public boolean onQueryTextSubmit(String s) {
        return false;
    }
    @Override
    public boolean onQueryTextChange(String s) {
        adapter.getFilter().filter(s);  // Filter the query entered by user
        return false;
    }
});

The .setOnQueryTextListener() method is called a listener that gets called whenever there is a change to the search query.

Use

The Android Studio SearchView is used to provide a search bar interface for users to search for specific items or groups of data within an app. This feature is useful for apps with a lot of information where users may need to search and find specific data quickly.

Important Points

  • The SearchView is a widget available in Android Studio that is used for searching for specific items or groups of data within an app.
  • The basic syntax for creating a SearchView widget in an Android Studio project requires setting the id, layout_width, layout_height, iconifiedByDefault, and queryHint attributes in the XML file.
  • You can filter and search your app’s data using SearchView by using setOnQueryTextListener() method.
  • The Android Studio SearchView is useful for apps with a lot of information where users may need to search and find specific data quickly.

Summary

The Android Studio SearchView is a widget that provides a search bar interface for users to search for specific items or groups of data within an app. The basic syntax for implementing a SearchView widget in an Android Studio project requires setting the id, layout_width, layout_height, iconifiedByDefault, and queryHint attributes in the XML file. The SearchView can be used to filter and search your app’s data using the setOnQueryTextListener() method. This feature is useful for apps with a large amount of content where users may need to search and find the necessary data quickly.

Published on: