Pesquisa é uma característica central do usuário Android. Os usuários devem ser capazes de pesquisar os dados que está disponível para eles, independente se o conteúdo está localizado no dispositivo ou na Internet. Para ajudar a criar uma experiência de pesquisa consistente para os usuários, o Android oferece uma estrutura de busca que ajuda você a implementar a pesquisa para sua aplicação.
Neste Exemplo vamos aprender como inserir o Widget na ActionBar do sistema, nada mais. Vou mostrar exemplos para inseri-lo utilizando o SearchView API 11> e o SearchView da biblioteca de suporte v7. Vamos ver nos passos a seguir:
1 – Criando o XML que contem o SearchView:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/search" android:actionViewClass="android.widget.SearchView" android:icon="@android:drawable/ic_menu_search" android:showAsAction="collapseActionView|ifRoom" android:title="@string/search_title"/> </menu>
Se estivermos utilizando a biblioteca de suporte com ActionBarActivity nosso menu deve ficar dessa forma:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" > <item android:id="@+id/search" android:icon="@android:drawable/ic_menu_search" android:title="@string/search_title" app:actionViewClass="android.support.v7.widget.SearchView" app:showAsAction="collapseActionView|ifRoom"/> </menu>
2 – Inserindo o menu em nossa Activity ou ActionBarActivity
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); //Carrega o arquivo de menu. MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.search_view, menu); //Pega o Componente. SearchView mSearchView = (SearchView) menu.findItem(R.id.search) .getActionView(); //Define um texto de ajuda: mSearchView.setQueryHint("teste"); // exemplos de utilização: mSearchView.setOnQueryTextListener(this); return true; }
Neste caso o que muda para a biblioteca de suporte é o import, no caso será utilizado android.support.v7.widget.SearchView; ou android.widget.SearchView;
A implementação da interface de busca vai ficar para outra publicação, mas caso alguém queira saber seu funcionamento basta seguir esses passos:
http://developer.android.com/guide/topics/search/search-dialog.html